Keycloakify
HomeGitHubStorybookAlternative to keycloak-js
v11
  • Documentation
  • Release Notes & Upgrade Instructions
  • FAQ
v11
  • Quick Start
  • CSS Customization
  • Testing your Theme
    • Outside of Keycloak
    • Inside of Keycloak
  • Deploying Your Theme
  • Integrating Keycloakify in your Codebase
    • Vite
    • Create-React-App / Webpack
    • yarn/npm/pnpm/bun Workspaces
    • Turborepo
    • Nx
    • Angular Workspace
  • Common Use Case Examples
    • Using a Component Library
    • Custom Fonts
    • Changing the background image
    • Adding your Logo
    • Using Tailwind
    • Dark Mode Persistence
  • Features
    • Internationalization and Translations
      • Basic principles
      • Previewing Your Pages in Different Languages
      • Adding New Translation Messages or Changing the Default Ones
      • Adding Support for Extra Languages
    • Theme Variants
    • Environment Variables
    • Styling a Custom Page Not Included in Base Keycloak
    • Integrating an Existing Theme into Your Keycloakify Project
    • Compiler Options
      • --project
      • keycloakVersionTargets
      • environmentVariables
      • themeName
      • startKeycloakOptions
      • themeVersion
      • accountThemeImplementation
      • postBuild
      • XDG_CACHE_HOME
      • kcContextExclusionsFtl
      • keycloakifyBuildDirPath
      • groupId
      • artifactId
      • Webpack specific options
        • projectBuildDirPath
        • staticDirPathInProjectBuildDirPath
        • publicDirPath
  • Page-Specific Guides
    • Registration Page
    • Terms and Conditions Page
  • Theme types
    • Differences Between Login Themes and Other Types of Themes
    • Account Theme
      • Single-Page
      • Multi-Page
    • Email Theme
    • Admin Theme
Powered by GitBook
On this page
  • Initializing the Multi-Page Account Theme
  • Internationalization and translation (i18n)
  • Using the REST API

Was this helpful?

Edit on GitHub
  1. Theme types
  2. Account Theme

Multi-Page

Last updated 2 months ago

Was this helpful?

Initializing the Multi-Page Account Theme

You've made your mind and opted for the Multi-Page Account theme? Great, let's start by initializing you theme:

npx keycloakify initialize-account-theme

When asked, select "Multi-Page".

This command will create the nessesary boilerplate for you.

Beyond that there isn't much thing you need to be aware of, things works exactly as in the login theme. You'll be able to use the keycloakifyadd-story and eject-page CLI command just select account when asked.

Internationalization and translation (i18n)

The i18n system of the Multi-Page Account theme is similar in every way to the one of the login theme, you just need to replace /login/ by /account/ everywhere.

Using the REST API

Even if you're using the Multi-Page theme you can still consume the REST API the Single-Page Account is build on top of. So, if some information you need are missing from the kcContext you can fetch them dynamically.

TODO

You can find the code for the Account v3 theme . This will help you infer all the available endpoints. You can also enable the Account v3 theme in your Keycloak and use the network tab to see the available endpoints.

here
The Multi-Page Account theme before customization
GitHub - keycloakify/keycloakify-starter at account_api_pocGitHub
Branch of the starter template modified to call the Account REST API
GitHub - keycloakify/keycloakify-starter-angular-vite at account_api_pocGitHub
Branch of the starter template modified to call the Account REST API
Logo
Logo