Authentication
Authentication configuration using Auth.js (NextAuth) in ShipKit
Authentication
ShipKit uses Auth.js (formerly NextAuth.js) for authentication, supporting multiple providers out of the box.
Supported Providers
- Discord
- GitHub
- Email (Passwordless)
Configuration
Add these environment variables to enable authentication:
# Required - Generate with `openssl rand -base64 32`
AUTH_SECRET=your_auth_secret
# Optional - Only needed in production
AUTH_URL=https://your-production-url.com
# Discord OAuth
AUTH_DISCORD_ID=your_discord_client_id
AUTH_DISCORD_SECRET=your_discord_client_secret
# GitHub OAuth
AUTH_GITHUB_ID=your_github_client_id
AUTH_GITHUB_SECRET=your_github_client_secret
# Google OAuth
AUTH_GOOGLE_ID=your_google_client_id
AUTH_GOOGLE_SECRET=your_google_client_secret
# Email (Resend)
AUTH_RESEND_KEY=your_resend_api_key
Provider Setup
- Discord: Create an application at Discord Developer Portal
- GitHub: Create an OAuth app at GitHub Developer Settings
- Google: Create credentials at Google Cloud Console
- Email: Get API key from Resend Dashboard