Documentation & Architecture

Learn how Unified GitHub integrates with the GitHub REST API and Supabase to provide secure multi-account orchestration.

Quick Start

Unified GitHub allows any registered website user to link one or more GitHub identities. Each authorization creates a dedicated record in the github_connections table, storing the user's encrypted access token.

1. Register at /register with 6-digit email OTP
2. Go to /dashboard/accounts & click "Connect GitHub Account"
3. Grant repository permissions in GitHub App dialog
4. Explore unified repositories at /dashboard/repositories

Authentication Flow

Website authentication is decoupled from GitHub account authorization. A user first authenticates with Supabase Auth (using email OTP verification). Once authenticated in Unified GitHub, they can link multiple distinct GitHub identities independently.

Encryption & Storage

Tokens received from GitHub during OAuth callback are encrypted server-side using AES-256-GCM with an authenticated 128-bit authentication tag and a cryptographically random 96-bit initialization vector (nonce) per token. The encryption key is kept securely outside the database.