Skip to content

Conversation

@drsamitha
Copy link

Purpose

Resolve the issue

Added prerequisites for adding a custom layout design.
Added notes and tips for adding a custom layout to the login page.
Updated notes and tips for Maven configuration and troubleshooting.
@CLAassistant
Copy link

CLAassistant commented Oct 25, 2025

CLA assistant check
All committers have signed the CLA.

@drsamitha
Copy link
Author

Hey @DilshanSenarath , can i have some feedback about this PR plz. should i rewrite all of the instructions in this section

@DilshanSenarath
Copy link
Contributor

Hi @drsamitha ,

Can you add a final screenshot of the updated page to the PR?

Comment on lines +172 to +174
- `npm v8.x`
- `PNPM v8.x `
- `yarn v1.22.x`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you verify that the repository builds successfully with all of these package managers?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

identity-apps only works with pnpm.

Can we have a screenshot of a successful build to confirm your changes are working?

@drsamitha

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the responses! I’m honestly not confident about this PR yet and I think this is also not enough for address the issue. Could you please suggest some instructions or a guide to help make the fix?

Also, what if we additionally add two separate scripts for Windows and Linux to the documentation section that automate the confusing copy-pasting and build steps? That should help reduce dependency failure errors, right? For now i use this basic script,

#!/usr/bin/env bash
set -e

if [ $# -ne 2 ]; then
    echo "Usage: $0 <IS_HOME_PATH> <IDENTITY_APPS_HOME_PATH>"
    exit 1
fi

IS_HOME="$1"
IDENTITY_APPS_HOME="$2"

WEBAPPS="$IS_HOME/repository/deployment/server/webapps"
AUTH_EP="$WEBAPPS/authenticationendpoint"
EXTENSIONS_DIR="$AUTH_EP/extensions/layouts/custom/carbon.super"
ASSETS_DIR="$EXTENSIONS_DIR/assets"

LAYOUT_SRC_DIR="$IDENTITY_APPS_HOME/identity-apps-core/components/login-portal-layouts/layouts"
LAYOUT_BUILD_DIR="$IDENTITY_APPS_HOME/identity-apps-core/components/login-portal-layouts"
LAYOUT_COMPILED_DST="$IDENTITY_APPS_HOME/identity-apps-core/apps/authentication-portal/src/main/webapp/extensions/layouts"
FINAL_DST="$AUTH_EP/extensions/layouts"

echo "==> Creating folder structure under Identity Server..."
mkdir -p "$ASSETS_DIR"

echo "==> Downloading layout files..."
curl -L -o "$EXTENSIONS_DIR/body.html" "https://raw.githubusercontent.com/wso2/docs-is/master/en/identity-server/7.2.0/docs/assets/code-samples/body.html"
curl -L -o "$EXTENSIONS_DIR/styles.css" "https://raw.githubusercontent.com/wso2/docs-is/master/en/identity-server/7.2.0/docs/assets/code-samples/style.css"
curl -L -o "$EXTENSIONS_DIR/script.js" "https://raw.githubusercontent.com/wso2/docs-is/master/en/identity-server/7.2.0/docs/assets/code-samples/script.js"
curl -L -o "$ASSETS_DIR/illustration.svg" "https://raw.githubusercontent.com/wso2/docs-is/master/en/identity-server/7.2.0/docs/assets/code-samples/illustration.svg"

echo "==> Copying custom layout to Identity Apps source tree..."
mkdir -p "$LAYOUT_SRC_DIR"
cp -r "$AUTH_EP/extensions/layouts/custom" "$LAYOUT_SRC_DIR/"

echo "==> Building Identity Apps (this may take a while)..."
cd "$LAYOUT_BUILD_DIR"
mvn clean install -q

echo "==> Copying compiled layout back to Identity Server..."
mkdir -p "$FINAL_DST"
cp -r "$LAYOUT_COMPILED_DST/custom" "$FINAL_DST/"

echo "==> All done!"
echo
echo "Your custom layout has been built and applied to the Identity Server."
echo "If the server was running, restart it before verifying the login page."
echo
echo "Custom layout directory: $FINAL_DST/custom"

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you verify that the repository builds successfully with all of these package managers?

Only with the pnpm.

Copy link
Author

@drsamitha drsamitha Nov 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

identity-apps only works with pnpm.

Can we have a screenshot of a successful build to confirm your changes are working?

@drsamitha

did u mean Screenshots of custom layout builds?
if so, Identity apps successfully build the custom layout pages.
PS - browser messed up the theme
image

TBH, i cant remember why i have included the other package managers.

@JayaShakthi97
Copy link
Contributor

Docs are updated with the minimal requirements to build custom layouts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants