Skip to content

Add ThunderID official Kotlin based native Android SDK#1

Merged
brionmario merged 1 commit into
thunder-id:mainfrom
brionmario:android-sdk
Jun 18, 2026
Merged

Add ThunderID official Kotlin based native Android SDK#1
brionmario merged 1 commit into
thunder-id:mainfrom
brionmario:android-sdk

Conversation

@brionmario

@brionmario brionmario commented Jun 17, 2026

Copy link
Copy Markdown
Member

Purpose

Introduces the official ThunderID Kotlin-based native Android SDK. This is the initial implementation of the SDK in its own dedicated repository (thunder-id/android-sdks), covering the core client, authentication (PKCE), token management, Compose UI components, and a quickstart sample app.

Approach

Structured the SDK as a Gradle multi-module project with two main layers:

  • Core (dev.thunderid.android)ThunderIDClient, ThunderIDConfig, PKCE-based auth flow (FlowExecutionClient, PKCEManager), token lifecycle (TokenStore, TokenValidator, TokenRefresher, JWKSCache), an HTTP client, and a StorageAdapter abstraction.
  • Compose (dev.thunderid.compose)ThunderIDProvider, ThunderIDState, LocalThunderID, and prebuilt components (SignInButton, SignOutButton, and others) for drop-in integration.

Also includes a samples/quickstart app (AuthScreen, HomeScreen, MainActivity, RootView) demonstrating a full sign-in/sign-out flow, along with CI via a PR builder workflow.

Related Issues

Related PRs

Checklist

  • Followed the contribution guidelines.
  • Manual test round performed and verified.
  • Documentation provided. (Add links if there are any)
  • Tests provided. (Add links if there are any)
    • Unit Tests
    • Integration Tests
  • Breaking changes. (Fill if applicable)
    • Breaking changes section filled.
    • breaking change label added.

Security checks

  • Followed secure coding standards in WSO2 Secure Coding Guidelines
  • Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets.

@brionmario brionmario merged commit 77fb460 into thunder-id:main Jun 18, 2026
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.

2 participants