OAuth Provider Setup

Configure third-party login options

Note: OAuth providers require HTTPS in production. For local testing, you can use HTTP.
Current OAuth Status
Configured Providers:
  • Google
  • GitHub
  • Discord
Setup Instructions
Google OAuth Setup
  1. Go to Google Cloud Console
  2. Create a new project or select existing
  3. Enable the "Google+ API" or "Google Sign-In API"
  4. Go to "Credentials" → "Create Credentials" → "OAuth 2.0 Client ID"
  5. Set application type to "Web application"
  6. Add authorized redirect URI: https://swissarmyfeed.com/auth/oauth/google/callback
  7. Add to your .env file:
GOOGLE_CLIENT_ID=your_google_client_id_here
GOOGLE_CLIENT_SECRET=your_google_client_secret_here
Microsoft OAuth Setup
  1. Go to Azure Portal
  2. Navigate to "Azure Active Directory" → "App registrations"
  3. Click "New registration"
  4. Set redirect URI to: https://swissarmyfeed.com/auth/oauth/microsoft/callback
  5. After creation, go to "Certificates & secrets" → "New client secret"
  6. Add to your .env file:
MICROSOFT_CLIENT_ID=your_microsoft_client_id_here
MICROSOFT_CLIENT_SECRET=your_microsoft_client_secret_here
GitHub OAuth Setup
  1. Go to GitHub OAuth Apps
  2. Fill in application details
  3. Set Authorization callback URL to: https://swissarmyfeed.com/auth/oauth/github/callback
  4. After creation, generate a client secret
  5. Add to your .env file:
GITHUB_CLIENT_ID=your_github_client_id_here
GITHUB_CLIENT_SECRET=your_github_client_secret_here
Discord OAuth Setup
  1. Go to Discord Developer Portal
  2. Create a "New Application"
  3. Go to "OAuth2" settings
  4. Add redirect URI: https://swissarmyfeed.com/auth/oauth/discord/callback
  5. Copy Client ID and Client Secret
  6. Add to your .env file:
DISCORD_CLIENT_ID=your_discord_oauth_client_id_here
DISCORD_CLIENT_SECRET=your_discord_oauth_client_secret_here
Note: This is different from your Discord Bot Token
HTTPS Setup with Let's Encrypt

Since you've registered swissarmyfeed.com, here's how to set up HTTPS:

  1. Install certbot: sudo apt install certbot python3-certbot-nginx
  2. Get certificate: sudo certbot --nginx -d swissarmyfeed.com
  3. Update your .env file:
BASE_URL=https://swissarmyfeed.com
HOST=0.0.0.0
PORT=8000

Set up a reverse proxy (nginx) to handle HTTPS and forward to your Flask app.