๐Ÿš€ Quick Access

๐ŸŽฎ
Swag & Seek Game
Photo Scavenger Hunt
โš™๏ธ
Swag Game Login
Admin Access via Game
๐Ÿ“Š
Scoring Board
Live Leaderboard
๐Ÿ 
Main Site
Public Homepage

๐Ÿ“ฑ Public Applications Management

๐Ÿ” OAuth Provider Configuration

๐Ÿ”ต Google OAuth

๐Ÿ”ต Facebook OAuth

๐Ÿ”ต Discord OAuth

๐Ÿ‘ฅ Role Assignment

๐Ÿ“‹ Detailed Setup Instructions

๐Ÿ”ต Google OAuth Setup
  1. Go to Google Cloud Console

    Visit console.cloud.google.com and sign in with your Google account

  2. Create or Select Project

    Click "Select a project" โ†’ "New Project" โ†’ Name it "Nerdi Gras OAuth" โ†’ Create

  3. Enable Google+ API

    Go to "APIs & Services" โ†’ "Library" โ†’ Search "Google+ API" โ†’ Enable it

  4. Configure OAuth Consent Screen

    Go to "OAuth consent screen" โ†’ Choose "External" โ†’ Fill out:

    • App name: Nerdi Gras
    • User support email: Your admin email
    • Developer contact: Your admin email
    • Authorized domains: nerdi-gras.org
  5. Create Credentials

    Go to "Credentials" โ†’ "Create Credentials" โ†’ "OAuth client ID" โ†’ "Web application"

  6. Configure Redirect URIs

    In "Authorized redirect URIs", add:

    https://nerdi-gras.org/auth/google/callback
  7. Copy Credentials

    Copy the Client ID and Client Secret to the form above

โš ๏ธ Important: Keep your Client Secret secure and never share it publicly!
๐Ÿ’œ Discord OAuth Setup
  1. Go to Discord Developer Portal

    Visit discord.com/developers/applications and login

  2. Create New Application

    Click "New Application" โ†’ Name it "Nerdi Gras Login" โ†’ Create

  3. Configure General Information

    In the "General Information" tab, fill out:

    • Description: OAuth login for Nerdi Gras convention website
    • Tags: gaming, convention, community
    • Upload a logo if desired
  4. Go to OAuth2 Settings

    Click "OAuth2" in the sidebar โ†’ "General"

  5. Add Redirect URI

    In "Redirects", click "Add Redirect" and enter:

    https://nerdi-gras.org/auth/discord/callback
  6. Copy Credentials

    Copy the Client ID and Client Secret to the form above

    Note: Click "Reset Secret" if you need to generate a new one

  7. Set Required Scopes

    The system automatically requests: identify and email scopes

๐Ÿ’ก Tip: Discord OAuth is perfect for gaming conventions - most attendees have Discord accounts!
๐Ÿ“˜ Facebook OAuth Setup
  1. Go to Facebook for Developers

    Visit developers.facebook.com and sign in

  2. Create New App

    Click "Create App" โ†’ "Consumer" โ†’ Continue

    • App name: Nerdi Gras
    • Contact email: Your admin email
  3. Add Facebook Login Product

    Go to "Add Products" โ†’ Find "Facebook Login" โ†’ "Set Up"

  4. Configure Facebook Login Settings

    In Facebook Login โ†’ Settings:

    • Valid OAuth Redirect URIs:
    • https://nerdi-gras.org/auth/facebook/callback
    • Enable "Login from Devices"
  5. Get App Credentials

    Go to "Settings" โ†’ "Basic" and copy:

    • App ID โ†’ Use as Client ID above
    • App Secret โ†’ Use as Client Secret above
  6. App Review

    For production, submit for app review to make public

    For testing, add test users in "Roles" โ†’ "Test Users"

โš ๏ธ Note: Facebook apps start in development mode. Submit for review to make public.
โš™๏ธ General OAuth Information
๐Ÿ”— Redirect URIs for Each Provider:
Google: https://nerdi-gras.org/auth/google/callback
Discord: https://nerdi-gras.org/auth/discord/callback
Facebook: https://nerdi-gras.org/auth/facebook/callback
๐Ÿ›ก๏ธ Security Best Practices:
  • Never share Client Secrets publicly or in client-side code
  • Regularly rotate OAuth secrets (every 6-12 months)
  • Monitor OAuth usage in each platform's analytics
  • Test OAuth flows in incognito/private browser windows
  • Set up monitoring for failed OAuth attempts
๐Ÿ‘ฅ Role Assignment Rules:
  • @nerdi-gras.org emails: Automatically get Personnel or Admin roles
  • Other emails: Get Public role by default
  • Email verification: Can be required for OAuth users
๐Ÿงช Testing OAuth Integration:
  1. Save your OAuth configuration above
  2. Enable the provider you want to test
  3. Open an incognito browser window
  4. Go to the login page and click the OAuth provider button
  5. Complete the OAuth flow and verify user creation
  6. Check that user gets the correct role assigned