Skip to content

Releases: ayeshajay/thunderid

Thunder v0.33.0

Choose a tag to compare

@github-actions github-actions released this 10 Apr 06:08

WSO2 Thunder ⚡

Identity Management Suite

License
GitHub last commit
GitHub issues
codecov.io

Thunder is a modern, open-source identity management service designed for teams building secure, customizable authentication experiences across applications, services, and AI agents. It enables developers to design and orchestrate login, registration, and recovery flows using a flexible identity flow designer.

Designed for extensibility, scalability, and seamless containerized deployment, Thunder integrates naturally with microservices and DevOps environments—serving as the core identity layer for your cloud platform.

Full Changelog: v0.23.0...v0.33.0

⚡ Quickstart

This Quickstart guide will help you get started with WSO2 Thunder quickly. It walks you through downloading and running the product, trying out the sample app, and exploring registering a user, logging in, and using the Client Credentials flow.

Download and Run WSO2 Thunder

You can run WSO2 Thunder either by downloading the release artifact or using the official Docker image.

Option 1: Run from Release Artifact

Follow these steps to download the 0.33.0 release of WSO2 Thunder and run it locally.

  1. Download the distribution from the 0.33.0 release

    OS Architecture Download Link
    macOS ARM64 (Apple Silicon) thunder-0.33.0-macos-arm64.zip
    macOS x64 (Intel) thunder-0.33.0-macos-x64.zip
    Linux x64 thunder-0.33.0-linux-x64.zip
    Linux ARM64 thunder-0.33.0-linux-arm64.zip
    Windows x64 thunder-0.33.0-win-x64.zip
  2. Unzip the product

    Unzip the downloaded file using the following command:

    unzip thunder-0.33.0-<os>-<arch>.zip

    Navigate to the unzipped directory:

    cd thunder-0.33.0-<os>-<arch>/
  3. Setup the product

    You need to setup the server with the initial configurations and data before starting the server for the first time.

    If you are using a Linux or macOS machine:

    ./setup.sh

    If you are using a Windows machine:

    .\setup.ps1

    Note the id of the sample app indicated with the log line [INFO] Sample App ID: <id>. You'll need it for the sample app configuration.

  4. Start the product

    If you are using a Linux or macOS machine:

    ./start.sh

    If you are using a Windows machine:

    .\start.ps1

    The product will start on https://localhost:8090.

Option 2: Run with Docker Compose

Follow these steps to run WSO2 Thunder using Docker Compose.

  1. Download the Docker Compose file

    Download the docker-compose.yml file using the following command:

    curl -o docker-compose.yml https://raw.githubusercontent.com/asgardeo/thunder/v0.33.0/install/quick-start/docker-compose.yml
  2. Start Thunder

    Run the following command in the directory where you downloaded the docker-compose.yml file:

    docker compose up

    This will automatically:

    • Initialize the database
    • Run the setup process
    • Start the Thunder server

    Note the id of the sample app indicated with the log line [INFO] Sample App ID: <id> in the setup logs. You'll need it for the sample app configuration.

    The product will start on https://localhost:8090.

Try Out the Product

Try out the Thunder Console

Follow these steps to access the Thunder Console:

  1. Open your browser and navigate to https://localhost:8090/console.

  2. Log in using the admin credentials created during the initial data setup (admin / admin).

Try Out with the Sample App

Thunder provides two sample applications to help you get started quickly:

  • React Vanilla Sample — Sample React application demonstrating direct API integration without external SDKs. Supports Native Flow API or Standard OAuth/OIDC.
  • React SDK Sample — Sample React application demonstrating SDK-based integration using @asgardeo/react for OAuth 2.0/OIDC authentication.
React Vanilla Sample
  1. Download the sample

    OS Architecture Download Link
    macOS ARM64 (Apple Silicon) sample-app-react-vanilla-0.33.0-macos-arm64.zip
    macOS x64 (Intel) sample-app-react-vanilla-0.33.0-macos-x64.zip
    Linux x64 sample-app-react-vanilla-0.33.0-linux-x64.zip
    Linux ARM64 sample-app-react-vanilla-0.33.0-linux-arm64.zip
    Windows x64 sample-app-react-vanilla-0.33.0-win-x64.zip
  2. Unzip and navigate to the sample app directory

    unzip sample-app-react-vanilla-0.33.0-<os>-<arch>.zip
    cd sample-app-react-vanilla-0.33.0-<os>-<arch>/
  3. Configure the sample

    Open app/runtime.json and set the applicationID to the sample app ID generated during "Setup the product":

    {
        "applicationID": "{your-application-id}"
    }
  4. Start the sample

    ./start.sh

    Open your browser and navigate to https://localhost:3000 to access the sample app.

    📖 Refer to the README.md inside the extracted sample app for detailed configuration options including OAuth redirect-based login.

React SDK Sample
  1. Download the sample

    OS Architecture Download Link
    macOS ARM64 (Apple Silicon) sample-app-react-sdk-0.33.0-macos-arm64.zip
    macOS x64 (Intel) sample-app-react-sdk-0.33.0-macos-x64.zip
    Linux x64 sample-app-react-sdk-0.33.0-linux-x64.zip
    Linux ARM64 sample-app-react-sdk-0.33.0-linux-arm64.zip
    Windows x64 sample-app-react-sdk-0.33.0-win-x64.zip
  2. Unzip and navigate to the sample app directory

    unzip sample-app-react-sdk-0.33.0-<os>-<arch>.zip
    cd sample-app-react-sdk-0.33.0-<os>-<arch>/
  3. Start the sample

    ./start.sh

    Open your browser and navigate to https://localhost:3000 to access the sample app.

    📖 Refer to the README.md inside the extracted sample app for detailed configuration and troubleshooting.

Self Register and Login (React Vanilla Sample)

The React Vanilla sample supports user self-registration and login:

  1. Open https://localhost:3000 and click "Sign up" to register a new user.

    Self Registration Username Password

  2. After registration, use the same credentials to "Sign In".

    Login to Sample App

  3. Upon successful login, you'll see the home page with your access token.

Obtain System API Token

To access the system APIs of Thunder, you need a token with system permissions. Follow the steps below to obtain a system API token.

  1. Run the following command, replacing <application_id> with the sample app ID generated during "Setup the product."
curl -k -X POST 'https://localhost:8090/flow/execute' \
  -d '{"applicationId":"<application_id>","flowType":"AUTHENTICATION"}'
  1. Extract the flowId value from the response.
{"flowId":"<flow_id>","flowStatus":"INCOMPLETE", ...}
  1. Run the following command, replacing <flow_id> with the flowId value you extracted above.
curl -k -X POST 'https://localhost:8090/flow/execute' \
  -d '{"flowId":"<flow_id>", "inputs":{"username":"admin","password":"admin", "requested...
Read more

Thunder v0.23.0

Thunder v0.23.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 18 Feb 05:26

WSO2 Thunder ⚡

Identity Management Suite

License
GitHub last commit
GitHub issues
codecov.io

Thunder is a modern, open-source identity management service designed for teams building secure, customizable authentication experiences across applications, services, and AI agents. It enables developers to design and orchestrate login, registration, and recovery flows using a flexible identity flow designer.

Designed for extensibility, scalability, and seamless containerized deployment, Thunder integrates naturally with microservices and DevOps environments—serving as the core identity layer for your cloud platform.

Full Changelog: v0.13.0...v0.23.0

⚡ Quickstart

This Quickstart guide will help you get started with WSO2 Thunder quickly. It walks you through downloading and running the product, trying out the sample app, and exploring registering a user, logging in, and using the Client Credentials flow.

Download and Run WSO2 Thunder

You can run WSO2 Thunder either by downloading the release artifact or using the official Docker image.

Option 1: Run from Release Artifact

Follow these steps to download the 0.23.0 release of WSO2 Thunder and run it locally.

  1. Download the distribution from the 0.23.0 release

    OS Architecture Download Link
    macOS ARM64 (Apple Silicon) thunder-0.23.0-macos-arm64.zip
    macOS x64 (Intel) thunder-0.23.0-macos-x64.zip
    Linux x64 thunder-0.23.0-linux-x64.zip
    Linux ARM64 thunder-0.23.0-linux-arm64.zip
    Windows x64 thunder-0.23.0-win-x64.zip
  2. Unzip the product

    Unzip the downloaded file using the following command:

    unzip thunder-0.23.0-<os>-<arch>.zip

    Navigate to the unzipped directory:

    cd thunder-0.23.0-<os>-<arch>/
  3. Setup the product

    You need to setup the server with the initial configurations and data before starting the server for the first time.

    If you are using a Linux or macOS machine:

    ./setup.sh

    If you are using a Windows machine:

    .\setup.ps1

    Note the id of the sample app indicated with the log line [INFO] Sample App ID: <id>. You'll need it for the sample app configuration.

  4. Start the product

    If you are using a Linux or macOS machine:

    ./start.sh

    If you are using a Windows machine:

    .\start.ps1

    The product will start on https://localhost:8090.

Option 2: Run with Docker Compose

Follow these steps to run WSO2 Thunder using Docker Compose.

  1. Download the Docker Compose file

    Download the docker-compose.yml file using the following command:

    curl -o docker-compose.yml https://raw.githubusercontent.com/asgardeo/thunder/v0.22.0/install/quick-start/docker-compose.yml
  2. Start Thunder

    Run the following command in the directory where you downloaded the docker-compose.yml file:

    docker compose up

    This will automatically:

    • Initialize the database
    • Run the setup process
    • Start the Thunder server

    Note the id of the sample app indicated with the log line [INFO] Sample App ID: <id> in the setup logs. You'll need it for the sample app configuration.

    The product will start on https://localhost:8090.

Try Out the Product

Try out the Developer Console

Follow these steps to access the Developer Console:

  1. Open your browser and navigate to https://localhost:8090/develop.

  2. Log in using the admin credentials created during the initial data setup (admin / admin).

Try Out with the Sample App

Thunder provides two sample applications to help you get started quickly:

  • React Vanilla Sample — Sample React application demonstrating direct API integration without external SDKs. Supports Native Flow API or Standard OAuth/OIDC.
  • React SDK Sample — Sample React application demonstrating SDK-based integration using @asgardeo/react for OAuth 2.0/OIDC authentication.
React Vanilla Sample
  1. Download the sample

    OS Architecture Download Link
    macOS ARM64 (Apple Silicon) sample-app-react-vanilla-0.23.0-macos-arm64.zip
    macOS x64 (Intel) sample-app-react-vanilla-0.23.0-macos-x64.zip
    Linux x64 sample-app-react-vanilla-0.23.0-linux-x64.zip
    Linux ARM64 sample-app-react-vanilla-0.23.0-linux-arm64.zip
    Windows x64 sample-app-react-vanilla-0.23.0-win-x64.zip
  2. Unzip and navigate to the sample app directory

    unzip sample-app-react-vanilla-0.23.0-<os>-<arch>.zip
    cd sample-app-react-vanilla-0.23.0-<os>-<arch>/
  3. Configure the sample

    Open app/runtime.json and set the applicationID to the sample app ID generated during "Setup the product":

    {
        "applicationID": "{your-application-id}"
    }
  4. Start the sample

    ./start.sh

    Open your browser and navigate to https://localhost:3000 to access the sample app.

    📖 Refer to the README.md inside the extracted sample app for detailed configuration options including OAuth redirect-based login.

React SDK Sample
  1. Download the sample

    OS Architecture Download Link
    macOS ARM64 (Apple Silicon) sample-app-react-sdk-0.23.0-macos-arm64.zip
    macOS x64 (Intel) sample-app-react-sdk-0.23.0-macos-x64.zip
    Linux x64 sample-app-react-sdk-0.23.0-linux-x64.zip
    Linux ARM64 sample-app-react-sdk-0.23.0-linux-arm64.zip
    Windows x64 sample-app-react-sdk-0.23.0-win-x64.zip
  2. Unzip and navigate to the sample app directory

    unzip sample-app-react-sdk-0.23.0-<os>-<arch>.zip
    cd sample-app-react-sdk-0.23.0-<os>-<arch>/
  3. Start the sample

    ./start.sh

    Open your browser and navigate to https://localhost:3000 to access the sample app.

    📖 Refer to the README.md inside the extracted sample app for detailed configuration and troubleshooting.

Self Register and Login (React Vanilla Sample)

The React Vanilla sample supports user self-registration and login:

  1. Open https://localhost:3000 and click "Sign up" to register a new user.

    Self Registration Username Password

  2. After registration, use the same credentials to "Sign In".

    Login to Sample App

  3. Upon successful login, you'll see the home page with your access token.

Obtain System API Token

To access the system APIs of Thunder, you need a token with system permissions. Follow the steps below to obtain a system API token.

  1. Run the following command, replacing <application_id> with the sample app ID generated during "Setup the product."
curl -k -X POST 'https://localhost:8090/flow/execute' \
  -d '{"applicationId":"<application_id>","flowType":"AUTHENTICATION"}'
  1. Extract the flowId value from the response.
{"flowId":"<flow_id>","flowStatus":"INCOMPLETE", ...}
  1. Run the following command, replacing <flow_id> with the flowId value you extracted above.
curl -k -X POST 'https://localhost:8090/flow/execute' \
  -d '{"flowId":"<flow_id>", "inputs":{"username":"admin","password":"admin", "reque...
Read more

Thunder v0.13.0

Choose a tag to compare

@github-actions github-actions released this 11 Nov 18:20
0198a46

WSO2 Thunder ⚡

Identity Management Suite

License
GitHub last commit
GitHub issues
codecov.io

Thunder is a modern, open-source identity management service designed for teams building secure, customizable authentication experiences across applications, services, and AI agents. It enables developers to design and orchestrate login, registration, and recovery flows using a flexible identity flow designer.

Designed for extensibility, scalability, and seamless containerized deployment, Thunder integrates naturally with microservices and DevOps environments—serving as the core identity layer for your cloud platform.

What's Changed

📝 Other Changes

Full Changelog: v0.12.0...v0.13.0

⚡ Quickstart

This Quickstart guide will help you get started with WSO2 Thunder quickly. It walks you through downloading and running the product, trying out the sample app, and exploring registering a user, logging in, and using the Client Credentials flow.

Download and Run WSO2 Thunder

You can run WSO2 Thunder either by downloading the release artifact or using the official Docker image.

Option 1: Run from Release Artifact

Follow these steps to download the 0.13.0 release of WSO2 Thunder and run it locally.

  1. Download the distribution from the 0.13.0 release
OS Architecture Download Link
macOS ARM64 (Apple Silicon) thunder-0.13.0-macos-arm64.zip
macOS x64 (Intel) thunder-0.13.0-macos-x64.zip
Linux x64 thunder-0.13.0-linux-x64.zip
Linux ARM64 thunder-0.13.0-linux-arm64.zip
Windows x64 thunder-0.13.0-win-x64.zip
  1. Unzip the product

    Unzip the downloaded file using the following command:

    unzip thunder-0.13.0-<os>-<arch>.zip

    Navigate to the unzipped directory:

    cd thunder-0.13.0-<os>-<arch>/
  2. Start the product

    Start the product using the following command:

    If you are using a Linux or macOS machine:

    bash start.sh --setup

    If you are using a Windows machine:

    .\start.ps1 --setup

Tip

The --setup flag initializes the product with default configurations, including creating an admin user and the Develop application.
You can omit this flag if you have already set up the initial data.
You can also run the setup manually later using the script located at:

  • Linux/macOS: <THUNDER_HOME>/scripts/setup_initial_data.sh
  • Windows: <THUNDER_HOME>\scripts\setup_initial_data.ps1

Option 2: Run with Docker

Follow these steps to run WSO2 Thunder using Docker.

  1. Pull the Docker image

    docker pull ghcr.io/asgardeo/thunder:0.13.0
  2. Run the container

    docker run --rm \
      -p 8090:8090 \
      ghcr.io/asgardeo/thunder:0.13.0

    Optionally if you want to modify the server configurations, you can mount a custom deployment.yaml file. Create a deployment.yaml file in your working directory similar to the deployment.yaml, and mount it as below:

    docker run --rm \
      -p 8090:8090 \
      -v $(pwd)/deployment.yaml:/opt/thunder/repository/conf/deployment.yaml \
      ghcr.io/asgardeo/thunder:0.13.0

    Optionally if you want to use custom configurations or certificates, you can mount them as follows:

    docker run --rm \
      -p 8090:8090 \
      -v $(pwd)/deployment.yaml:/opt/thunder/repository/conf/deployment.yaml \
      -v $(pwd)/certs/server.cert:/opt/thunder/repository/resources/security/server.cert \
      -v $(pwd)/certs/server.key:/opt/thunder/repository/resources/security/server.key \
      ghcr.io/asgardeo/thunder:0.13.0
  3. Initialize with default data (Required for first-time setup)

    To use the Developer Console and sample applications, you need to set up initial data including the default admin user. Run this command after starting the container:

    docker exec -it $(docker ps -q --filter ancestor=ghcr.io/asgardeo/thunder:0.13.0) \
      /opt/thunder/scripts/setup_initial_data.sh

    This creates:

    • Default admin user (admin / admin)
    • Developer Console application
    • Basic authentication and registration flows

    [!NOTE]
    Replace the container selection with your specific container name if running multiple Thunder containers.

Try Out the Product

Try out the Developer Console

Follow these steps to access the Developer Console:

  1. Open your browser and navigate to https://localhost:8090/develop.

  2. Log in using the admin credentials created during the initial data setup (admin / admin).

Try Out with the Sample App

To quickly get started with Thunder, you can use the sample app provided with the product. This guide demonstrates how to download and run the sample app, self register a user and try out login to the sample app.

Download and Run the Sample App
  1. Download the sample app from the 0.13.0 release
OS Architecture Download Link
macOS ARM64 (Apple Silicon) sample-app-0.13.0-macos-arm64.zip
macOS x64 (Intel) sample-app-0.13.0-macos-x64.zip
Linux x64 sample-app-0.13.0-linux-x64.zip
Linux ARM64 sample-app-0.13.0-linux-arm64.zip
Windows x64 sample-app-0.13.0-win-x64.zip
  1. Unzip and navigate to the sample app directory

    unzip sample-app-0.13.0-<os>-<arch>.zip
    cd sample-app-0.13.0-<os>-<arch>/
  2. Create required application for sample app in Thunder

    Before using the sample app, you need to create an application in Thunder:

    curl -kL -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' https://localhost:8090/applications \
    -d '{
        "name": "Sample App",
        "description": "Sample application for testing",
        "url": "https://localhost:3000",
        "logo_url": "https://localhost:3000/logo.png",
        "tos_uri": "https://localhost:3000/terms",
        "policy_uri": "https://localhost:3000/privacy",
        "contacts": ["admin@example.com", "support@example.com"],
        "auth_flow_graph_id": "auth_flow_config_basic",
        "registration_flow_graph_id": "registration_flow_config_basic",
        "is_registration_flow_enabled": true,
        "user_attributes": ["given_name","family_name","email","groups"],
        "inbound_auth_config": [{
            "type": "oauth2",
            "config": {
                "client_id": "sample_app_client",
                "client_secret": "sample_app_secret",
                "redirect_uris": ["https://localhost:3000"],
                "grant_types": ["authorization_code", "client_credentials"],
                "response_types": ["code"],
                "token_endpoint_auth_method": "client_secret_basic",
                "pkce_required": false,
                "public_client": false,
                "scopes": ["openid", "profile", "email"],
                "token": {
                    "issuer": "thunder",
                    "access_token": {
                        "validity_period": 3600,
                        "user_attributes": ["given_name","family_name","email","groups"]
                    },
                    "id_token": {
                        "validity_period": 3600,
                        "user_attributes": ["given_name","family_name","email","groups"],
                        "scope_claims": {
                            "profile": ["name","given_name","family_name","picture"],
                            "email": ["email","email_verified"],
                            "phone": ["phone_number","phone_number_verified"],
                            "group": ["groups"]
                        }
                    }
                }
            }
        }]
    }'

    Note the id from the response - you'll need it for the sample app configuration.

  3. Configure the sample app

    Open the runtime.json file in the thunder-sample-app-0.13.0--/app directory and update the configurations:

    • applicationID: Use the appli...
Read more

Thunder v0.12.0

Choose a tag to compare

@github-actions github-actions released this 11 Nov 17:34
be286cd

WSO2 Thunder ⚡

Identity Management Suite

License
GitHub last commit
GitHub issues
codecov.io

Thunder is a modern, open-source identity management service designed for teams building secure, customizable authentication experiences across applications, services, and AI agents. It enables developers to design and orchestrate login, registration, and recovery flows using a flexible identity flow designer.

Designed for extensibility, scalability, and seamless containerized deployment, Thunder integrates naturally with microservices and DevOps environments—serving as the core identity layer for your cloud platform.

What's Changed

📝 Other Changes

New Contributors

Full Changelog: https://github.com/ayeshajay/thunder/commits/v0.12.0

⚡ Quickstart

This Quickstart guide will help you get started with WSO2 Thunder quickly. It walks you through downloading and running the product, trying out the sample app, and exploring registering a user, logging in, and using the Client Credentials flow.

Download and Run WSO2 Thunder

You can run WSO2 Thunder either by downloading the release artifact or using the official Docker image.

Option 1: Run from Release Artifact

Follow these steps to download the 0.12.0 release of WSO2 Thunder and run it locally.

  1. Download the distribution from the 0.12.0 release
OS Architecture Download Link
macOS ARM64 (Apple Silicon) thunder-0.12.0-macos-arm64.zip
macOS x64 (Intel) thunder-0.12.0-macos-x64.zip
Linux x64 thunder-0.12.0-linux-x64.zip
Linux ARM64 thunder-0.12.0-linux-arm64.zip
Windows x64 thunder-0.12.0-win-x64.zip
  1. Unzip the product

    Unzip the downloaded file using the following command:

    unzip thunder-0.12.0-<os>-<arch>.zip

    Navigate to the unzipped directory:

    cd thunder-0.12.0-<os>-<arch>/
  2. Start the product

    Start the product using the following command:

    If you are using a Linux or macOS machine:

    bash start.sh --setup

    If you are using a Windows machine:

    .\start.ps1 --setup

Tip

The --setup flag initializes the product with default configurations, including creating an admin user and the Develop application.
You can omit this flag if you have already set up the initial data.
You can also run the setup manually later using the script located at:

  • Linux/macOS: <THUNDER_HOME>/scripts/setup_initial_data.sh
  • Windows: <THUNDER_HOME>\scripts\setup_initial_data.ps1

Option 2: Run with Docker

Follow these steps to run WSO2 Thunder using Docker.

  1. Pull the Docker image

    docker pull ghcr.io/asgardeo/thunder:0.12.0
  2. Run the container

    docker run --rm \
      -p 8090:8090 \
      ghcr.io/asgardeo/thunder:0.12.0

    Optionally if you want to modify the server configurations, you can mount a custom deployment.yaml file. Create a deployment.yaml file in your working directory similar to the deployment.yaml, and mount it as below:

    docker run --rm \
      -p 8090:8090 \
      -v $(pwd)/deployment.yaml:/opt/thunder/repository/conf/deployment.yaml \
      ghcr.io/asgardeo/thunder:0.12.0

    Optionally if you want to use custom configurations or certificates, you can mount them as follows:

    docker run --rm \
      -p 8090:8090 \
      -v $(pwd)/deployment.yaml:/opt/thunder/repository/conf/deployment.yaml \
      -v $(pwd)/certs/server.cert:/opt/thunder/repository/resources/security/server.cert \
      -v $(pwd)/certs/server.key:/opt/thunder/repository/resources/security/server.key \
      ghcr.io/asgardeo/thunder:0.12.0
  3. Initialize with default data (Required for first-time setup)

    To use the Developer Console and sample applications, you need to set up initial data including the default admin user. Run this command after starting the container:

    docker exec -it $(docker ps -q --filter ancestor=ghcr.io/asgardeo/thunder:0.12.0) \
      /opt/thunder/scripts/setup_initial_data.sh

    This creates:

    • Default admin user (admin / admin)
    • Developer Console application
    • Basic authentication and registration flows

    [!NOTE]
    Replace the container selection with your specific container name if running multiple Thunder containers.

Try Out the Product

Try out the Developer Console

Follow these steps to access the Developer Console:

  1. Open your browser and navigate to https://localhost:8090/develop.

  2. Log in using the admin credentials created during the initial data setup (admin / admin).

Try Out with the Sample App

To quickly get started with Thunder, you can use the sample app provided with the product. This guide demonstrates how to download and run the sample app, self register a user and try out login to the sample app.

Download and Run the Sample App
  1. Download the sample app from the 0.12.0 release
OS Architecture Download Link
macOS ARM64 (Apple Silicon) sample-app-0.12.0-macos-arm64.zip
macOS x64 (Intel) sample-app-0.12.0-macos-x64.zip
Linux x64 sample-app-0.12.0-linux-x64.zip
Linux ARM64 sample-app-0.12.0-linux-arm64.zip
Windows x64 sample-app-0.12.0-win-x64.zip
  1. Unzip and navigate to the sample app directory

    unzip sample-app-0.12.0-<os>-<arch>.zip
    cd sample-app-0.12.0-<os>-<arch>/
  2. Create required application for sample app in Thunder

    Before using the sample app, you need to create an application in Thunder:

    curl -kL -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' https://localhost:8090/applications \
    -d '{
        "name": "Sample App",
        "description": "Sample application for testing",
        "url": "https://localhost:3000",
        "logo_url": "https://localhost:3000/logo.png",
        "tos_uri": "https://localhost:3000/terms",
        "policy_uri": "https://localhost:3000/privacy",
        "contacts": ["admin@example.com", "support@example.com"],
        "auth_flow_graph_id": "auth_flow_config_basic",
        "registration_flow_graph_id": "registration_flow_config_basic",
        "is_registration_flow_enabled": true,
        "user_attributes": ["given_name","family_name","email","groups"],
        "inbound_auth_config": [{
            "type": "oauth2",
            "config": {
                "client_id": "sample_app_client",
                "client_secret": "sample_app_secret",
                "redirect_uris": ["https://localhost:3000"],
                "grant_types": ["authorization_code", "client_credentials"],
                "response_types": ["code"],
                "token_endpoint_auth_method": "client_secret_basic",
                "pkce_required": false,
                "public_client": false,
                "scopes": ["openid", "profile", "email"],
                "token": {
                    "issuer": "thunder",
                    "access_token": {
                        "validity_period": 3600,
                        "user_attributes": ["given_name","family_name","email","groups"]
                    },
                    "id_token": {
                        "validity_period": 3600,
                        "user_attributes": ["given_name","family_name","email","groups"],
                        "scope_claims": {
                            "profile": ["name","given_name","family_name","picture"],
                            "email": ["email","email_verified"],
                            "phone": ["phone_number","phone_number_verified"],
                            "group": ["groups"]
                        }
                    }
                }
            }
        }]
    }'

    Note the id from the response - you'll need it for the sample app configuration.

  3. Configure the sample app

    Open the runtime.json file in the thunder-sample-app-0.12.0...

Read more