Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Roadmap

Aero2 is evolving from a single-tenant OIDC provider into a multi-tenant identity platform. This page summarizes the development phases.

Current State (v0.3)

Aero2 currently provides:

  • OIDC Provider — Authorization code flow with PKCE, ID/access/refresh tokens, JWKS, discovery
  • Relying Party — GitHub and Google OAuth, static and dynamic IdP configuration
  • Security — RS256 token signing, CSRF protection, CSP, HSTS, CORS fail-closed, open redirect prevention, proactive session revocation
  • RBAC — Roles and permissions, bootstrap admin, permission-based endpoint protection
  • Frontend — React 19 SPA with admin dashboard, dark mode, audit log viewer
  • Testing — 128+ tests (Vitest with Cloudflare Workers pool)

Phase Overview

PhaseFocusPriorityStatus
Phase 0Multi-Tenancy FoundationP0Not Started
Phase 1Core Auth (email/password, lockout, profile)P0Partially Done
Phase 2Multi-Factor AuthenticationP0-P1Not Started
Phase 3Developer Experience (SDKs, OpenAPI, M2M)P1Not Started
Phase 4Organizations & B2BP1-P2Not Started
Phase 5Session & Token EnhancementsP1-P2Not Started
Phase 6Enterprise SSO (SAML, SCIM)P2Not Started
Phase 7Security HardeningP2Not Started
Phase 8Admin & OperationalP2Not Started
Phase 9Frontend PolishP2Not Started
Phase 10Advanced OAuth2 (Device flow, PAR, DPoP)P3Not Started
Phase 11Compliance (GDPR, DR)P3Not Started
Phase 12Webhooks & EventsP3Not Started
Phase 13Performance & ObservabilityP3Not Started

Phase 0: Multi-Tenancy Foundation

Must be completed first — every subsequent feature depends on this.

Transforms Aero2 from single-tenant to multi-tenant by adding:

  • applications table with app_id scoping on all tenant tables
  • Dashboard application bootstrap (dogfooding)
  • Subdomain routing middleware (hostname → application resolution)
  • Application CRUD API and API key management
  • Custom domain support via Cloudflare for SaaS
  • Dashboard frontend for developers

See Multi-Tenancy Design for full details.

Phase 1: Core Auth Foundation

Adds native authentication methods beyond external OAuth:

  • Durable Object-backed rate limiting (replacing in-memory)
  • Account lockout and brute-force protection
  • Email/password authentication with signup, verification, and password reset
  • User self-service profile management
  • Sign-up configuration (open, invite-only, domain-restricted)

Completed items: open redirect prevention (#2), CSRF hardening (#3), session revocation on disable (#5).

See Email/Password Design for details.

Phase 2: MFA

  • TOTP (authenticator apps)
  • WebAuthn / Passkeys
  • SMS OTP
  • Magic link authentication
  • Step-up authentication for sensitive operations
  • Per-app MFA policy (off/optional/required)

See MFA Design for details.

Phase 3: Developer Experience

  • Client credentials flow (M2M authentication)
  • Token introspection endpoint (RFC 7662)
  • OpenAPI documentation with Scalar UI
  • JavaScript/TypeScript SDK (@aero2/sdk-js)
  • React component library (@aero2/react)
  • Backend middleware libraries (@aero2/node, @aero2/hono)
  • Custom JWT templates

Phase 4: Organizations

  • Organization CRUD and membership
  • Org-level RBAC
  • Verified domains (auto-enroll by email domain)
  • Invitation flow
  • Org switcher and management UI

See Organizations Design for details.

Phases 5-13

Later phases cover session enhancements, enterprise SSO (SAML/SCIM), security hardening, branding, webhooks, advanced OAuth2 protocols (Device flow, PAR, DPoP), compliance tools, and performance optimization.

Suggested Build Order

  1. Phase 0 (multi-tenancy)
  2. Email/password auth (#6) + password reset (#7)
  3. Rate limiting (#1) + account lockout (#4)
  4. User profile (#8) + signup config (#9)
  5. TOTP MFA (#10)
  6. Client credentials (#15)
  7. Organizations (#22-25)
  8. OpenAPI docs (#17)
  9. SDKs (#18-20)
  10. Everything else based on demand

Contributing

Pick up any unstarted item from the roadmap. See Local Setup for getting started and Conventions for coding standards.