[UMBRELLA ☂️] SDK Extension Points

Open
#469 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Quiet
Tech stack
typescript

Research direction

No files, tests, or concrete entry points are named. Start by surveying the SDK provider and the existing rendering, flow, authentication, validation, and theming APIs, then define the boundaries and typed contracts for a structured extensions API. Done means the extension model is implemented and documented across the requested customization areas.

Written by the indexing model from the issue text.

Description

Type/New Feature umbrella
Problem

The Asgardeo SDK is currently a closed system. It ships with fixed behavior for rendering, flow handling, theming, and authentication logic. Consumers who need to adapt the SDK to their product — different design systems, custom flow steps, non-standard component types, bespoke UI patterns — have no supported way to do so. The only escape hatch today is forking or wrapping SDK internals, which breaks on upgrades and couples consumers to implementation details.

As adoption grows, this rigidity becomes a ceiling. Products built on the SDK inevitably hit cases the SDK didn't anticipate, and without extension points, those teams are blocked.

Proposed Solution

Introduce a first-class, documented extension model that allows consumers to plug into the SDK at well-defined boundaries — without forking, without bypassing internals, and without waiting for the SDK team to implement every edge case.

Areas where extensions are needed

  1. UI rendering — Replace or supplement how specific component types are rendered (e.g. swap the built-in password field for a custom design system component, or handle a server-emitted component type the SDK doesn't know about)
  2. Flow lifecycle hooks — React to flow events (step transitions, errors, completions) with custom side effects or analytics
  3. Authentication behavior — Override or augment how specific authenticator types are handled
  4. Field validation — Plug in custom validation logic per field or component type
  5. Theming and styling — Go beyond CSS variable overrides to control rendering structure

A structured extensions API on the SDK provider that serves as the canonical entry point for all consumer customizations, with each area having a clear, typed, and stable contract.

Alternatives

N/A

Please select the package issue is related to

other

Version

N/A

Reporter Checklist
  • I have searched the existing issues and this is not a duplicate.
  • I have provided all the necessary information.
  • I have verified the feature on the latest version of the package.
Dominant language
TypeScript
Stars
18
Forks
67
Avg merge
4h 6m
Merged PRs (30d)
13

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from asgardeo/javascript

All issues in asgardeo/javascript

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.