mirror of
https://github.com/better-auth/better-auth.git
synced 2026-10-19 11:24:57 -05:00
OAuth providers without an issuer shared the `local:` namespace with credential and SIWE identities, so a provider ID could resolve to an internal method's identity and inherit its user. An identity match skips every implicit-linking gate, which made that namespace the only thing standing between an aliased provider and another method's account. Token and account-info routes resolved their provider configuration from the public `providerId` alias, so an SSO provider registered under a social provider's alias could redeem its stored tokens against that provider's client credentials. Provider instances already namespace identity and account keys, so resolve configuration from them too. TikTok is typed as always returning `union_id`, but the field is not guaranteed. Reject that authentication instead of deriving a subject from a missing value. Correct the SSO domain rule, which rejects a provider unless every entry resolves; the joins section, which documented an `experimental` option that does not exist; and the Okta example, which enabled IdP-initiated SAML that the plugin disables by default.
Website & Docs
The main website and documentation for better-auth.com
Quick Start
# install
pnpm install
# develop
pnpm dev
Open localhost:3000 to preview.
Stack
- Framework: Next.js 16 (App Router, Turbopack)
- Styling: Tailwind CSS 4
- Animation: Framer Motion
- Docs: Fumadocs
- Icons: Lucide React
- Fonts: Geist Sans & Geist Mono
Structure
├─ app/
│ ├─ page.tsx # Home — hero + sign-in demo
│ ├─ products/ # Products page
│ ├─ blog/ # Blog posts
│ └─ docs/[[...slug]]/ # Documentation (MDX)
│
├─ components/
│ ├─ landing/ # Marketing components
│ ├─ docs/ # Documentation components
│ ├─ ui/ # Shared primitives
│ └─ icons/ # Brand icons & logo
│
├─ content/ # MDX documentation files
│
├─ lib/
│ ├─ source.ts # Fumadocs content source
│ └─ utils.ts # Utilities
│
└─ public/
└─ branding/ # Logo assets (SVG + PNG)
Scripts
pnpm dev # Start dev server (Turbopack)
pnpm build # Production build
pnpm start # Serve production build
pnpm lint:fix # Lint & auto-fix with Biome