Available Authentication Methods
Core Authentication Methods
โ Credentials (Email/Password)
Always available - classic email/password login
emailAndPassword: enabled
๐ Magic Link
Passwordless authentication via email
magicLink plugin
๐ Two-Factor Authentication
TOTP (apps) + OTP (SMS/email) support
twoFactor plugin
๐ Social Authentication
Google, GitHub, Facebook, Apple login
socialProviders (OAuth)
Advanced Authentication Features
๐ API Keys
Generate API keys for programmatic access
apiKey plugin
๐ซ Bearer Tokens
JWT tokens for API authentication
bearer plugin
๐ข Organizations
Multi-tenant workspaces with roles
organization plugin
๐ Admin Functions
Administrative user management
admin plugin
Environment Variables Configuration
Core Requirements: At minimum, you need
BETTER_AUTH_SECRET and BETTER_AUTH_URL to get authentication working.Core Authentication Controls
# Better Auth Core
BETTER_AUTH_SECRET="your-secret-key"
BETTER_AUTH_URL="http://localhost:3000"
BETTER_AUTH_TRUSTED_ORIGINS="http://localhost:3000"
# Email Features (required for magic link, verification, password reset)
RESEND_API_KEY="re_your_api_key"
EMAIL_FROM="noreply@yourdomain.com"Feature Toggle Variables
# Control which auth methods are available
NEXT_PUBLIC_AUTH_METHODS="credential,magiclink,google,github"
# Options: credential, magiclink, google, github, facebook, appleOrganization & Billing
Billing Mode: Choose between individual user billing or organization-based billing.
# Multi-tenant mode
NEXT_PUBLIC_BILLING_MODE="organization" # or "user"
# Available pages/features
NEXT_PUBLIC_ENABLED_PAGES="organization,invitation,account,settings,subscription,notifications,admin"Quick Configuration Examples
1
Minimal Setup (Email/Password only)
BETTER_AUTH_SECRET="your-secret"
BETTER_AUTH_URL="http://localhost:3000"
NEXT_PUBLIC_AUTH_METHODS="credential"
NEXT_PUBLIC_BETTER_AUTH_REQUIRE_EMAIL_VERIFICATION=false2
Full Features Setup
# Core
BETTER_AUTH_SECRET="your-secret"
BETTER_AUTH_URL="http://localhost:3000"
# Email service
RESEND_API_KEY="re_your_key"
EMAIL_FROM="noreply@yourdomain.com"
# All auth methods
NEXT_PUBLIC_AUTH_METHODS="credential,magiclink,google,github"
# All user features
NEXT_PUBLIC_BETTER_AUTH_REQUIRE_EMAIL_VERIFICATION=true
NEXT_PUBLIC_BETTER_AUTH_2FA_ENABLE=true
NEXT_PUBLIC_BETTER_AUTH_TOKEN_MANAGEMENT=true
# Social providers
GOOGLE_CLIENT_ID="your-google-id"
GOOGLE_CLIENT_SECRET="your-google-secret"
GITHUB_CLIENT_ID="your-github-id"
GITHUB_CLIENT_SECRET="your-github-secret"File Structure & User Pages
All authentication features are organized in dedicated route groups and component folders for easy navigation and maintenance.
๐ Authentication Routes
Location:
src/app/[locale]/(auth)/All public authentication pages grouped under a dedicated layout.src/app/[locale]/(auth)/
โโโ login/ # Login page with all methods
โโโ register/ # User registration
โโโ logout/ # Logout confirmation
โโโ reset-password/ # Password reset form
โโโ verify-request/ # Email & 2FA verification
โโโ totp/ # TOTP verification
โโโ otp/ # OTP verification
โโโ recovery/ # Recovery codes verification
๐งฉ Authentication Components
Location:
src/components/features/auth/Reusable authentication form components used across all auth pages.src/components/features/auth/
โโโ forms/ # All authentication forms
โโโ login.tsx # Main login form
โโโ credential-form.tsx # Email/password form
โโโ magic-link-form.tsx # Magic link form
โโโ register-form.tsx # Registration forms
โโโ recovery-code-form.tsx # 2FA recovery form
๐ค User Account Management
Location:
src/app/[locale]/(app)/account/Protected pages requiring user authentication. Access controlled by auth middleware.src/app/[locale]/(app)/account/
โโโ settings/ # Profile & security settings
โโโ api-keys/ # API key management
โโโ subscription/ # Subscription management
โโโ notifications/ # Notification preferences
โโโ organizations/ # Organization management
โ โโโ [id]/ # Organization details & settings
โโโ invitations/ # Organization invitations
โโโ [id]/ # Accept/decline invitations
Method-Specific Documentation
Ready to dive deeper? Each authentication method has its own detailed guide with configuration examples and troubleshooting tips.
๐ง
Credentials Authentication
Email/password setup and configuration
๐
Magic Link
Passwordless authentication via email
๐
Two-Factor Authentication
TOTP and OTP setup and usage
๐
Social Authentication
Google, GitHub, Facebook, Apple configuration
๐
API Keys & Tokens
Programmatic access management
๐ข
Organizations
Multi-tenant workspace management
Security First: All authentication methods include built-in rate limiting, CSRF protection, secure session management, and XSS prevention.