Repository navigation
Expand file tree
/
Copy path.env.local.example
More file actions
122 lines (110 loc) · 6.69 KB
/
Copy path.env.local.example
File metadata and controls
122 lines (110 loc) · 6.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# =============================================================================
# Environment Variables Configuration
# =============================================================================
# Copy this file to .env.local and replace all placeholder values with your
# actual configuration. Never commit .env.local to version control.
#
# PLACEHOLDERS TO REPLACE:
# - your-org → Your GitHub organization or username
# - your-project → Your Firebase project ID
# - cursorboston.com → Your domain name
# - your-*-id → Your actual IDs from respective services
# =============================================================================
# -----------------------------------------------------------------------------
# Firebase Configuration (REQUIRED)
# -----------------------------------------------------------------------------
# Get these values from Firebase Console:
# https://console.firebase.google.com → Project Settings → General → Your apps
# -----------------------------------------------------------------------------
NEXT_PUBLIC_FIREBASE_API_KEY=your-api-key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your-project.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project-id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your-project.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your-sender-id
NEXT_PUBLIC_FIREBASE_APP_ID=your-app-id
NEXT_PUBLIC_FIREBASE_DATABASE_URL=https://your-project.firebaseio.com
# Optional server-side override for Admin SDK RTDB access.
# Defaults to NEXT_PUBLIC_FIREBASE_DATABASE_URL when omitted.
# FIREBASE_DATABASE_URL=https://your-project.firebaseio.com
# Optional: Firebase Analytics Measurement ID
# NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=G-XXXXXXXXXX
# -----------------------------------------------------------------------------
# Discord OAuth (OPTIONAL - for Discord connection feature)
# -----------------------------------------------------------------------------
# 1. Create a Discord application at: https://discord.com/developers/applications
# 2. Go to OAuth2 → General
# 3. Add redirect URI: https://YOUR-DOMAIN.com/api/discord/callback
# 4. Copy Client ID and create a Client Secret
# 5. Get your Discord Server ID (right-click server → Copy Server ID)
# -----------------------------------------------------------------------------
NEXT_PUBLIC_DISCORD_CLIENT_ID=your-discord-client-id
DISCORD_CLIENT_SECRET=your-discord-client-secret
NEXT_PUBLIC_DISCORD_REDIRECT_URI=https://cursorboston.com/api/discord/callback
CURSOR_BOSTON_DISCORD_SERVER_ID=XXXXXXXX
# Discord Webhook (OPTIONAL - for PR/merge notifications to Discord)
# 1. Go to your Discord server → Channel Settings → Integrations → Webhooks
# 2. Click "New Webhook" and copy the webhook URL
DISCORD_WEBHOOK_URL_PR=https://discord.com/api/webhooks/XXXXXXXX/XXXXXXXX
# -----------------------------------------------------------------------------
# GitHub OAuth (OPTIONAL - for GitHub connection feature)
# -----------------------------------------------------------------------------
# 1. Go to: https://github.com/settings/developers
# 2. Click "New OAuth App"
# 3. Set Authorization callback URL: https://YOUR-DOMAIN.com/api/github/callback
# 4. Copy Client ID and create a Client Secret
# 5. For webhooks: Go to repository Settings → Webhooks → Add webhook
# -----------------------------------------------------------------------------
NEXT_PUBLIC_GITHUB_CLIENT_ID=your-github-client-id
GITHUB_CLIENT_SECRET=your-github-client-secret
NEXT_PUBLIC_GITHUB_REDIRECT_URI=https://cursorboston.com/api/github/callback
# GitHub Webhook (OPTIONAL - for PR tracking)
# Generate a secret and configure it in your GitHub repository webhook settings
GITHUB_WEBHOOK_SECRET=your-github-webhook-secret
GITHUB_REPO_OWNER=your-org
GITHUB_REPO_NAME=cursor-boston
# -----------------------------------------------------------------------------
# Firebase Admin (OPTIONAL - required for GitHub webhook processing)
# -----------------------------------------------------------------------------
# Service account JSON from Firebase Console → Project settings → Service accounts
# Store the entire JSON as a single line string
FIREBASE_SERVICE_ACCOUNT_JSON={"type":"service_account","project_id":"your-project-id"}
# -----------------------------------------------------------------------------
# Admin Email (OPTIONAL - for submission notifications)
# -----------------------------------------------------------------------------
# Email address that will receive notifications for talk and event submissions
# Defaults to hello@cursorboston.com if not set
# ADMIN_EMAIL=admin@yourdomain.com
# -----------------------------------------------------------------------------
# Mailgun (OPTIONAL - for sending emails)
# -----------------------------------------------------------------------------
# Required for: CFP .edu verification codes, profile email verification,
# and admin notifications (talks, events, CFP submissions)
# Get API key from: https://app.mailgun.com/app/account/security/api_keys
# Domain: your verified sending domain (e.g. mg.cursorboston.com)
# MAILGUN_API_KEY=key-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# MAILGUN_DOMAIN=mg.cursorboston.com
# MAILGUN_FROM=noreply@mg.cursorboston.com # optional, defaults to noreply@MAILGUN_DOMAIN
# MAILGUN_EU=true # optional, set if using EU region
# -----------------------------------------------------------------------------
# Agent API (No additional configuration required)
# -----------------------------------------------------------------------------
# The Agent API allows AI agents to register as community members.
# It uses the Firebase Admin SDK configured above - no additional env vars needed.
# API endpoints: /api/agents/register, /api/agents/me, /api/agents/claim/[token]
# Discovery: /llms.txt
# -----------------------------------------------------------------------------
# Cron/Scheduled Jobs (OPTIONAL - required for hackathon disqualification checks)
# -----------------------------------------------------------------------------
# Secret token for authenticating cron job requests
# Generate a secure random string: openssl rand -hex 32
CRON_SECRET=your-cron-secret-here
# =============================================================================
# IMPORTANT NOTES:
# =============================================================================
# 1. Replace "cursorboston.com" with your actual domain in redirect URIs
# 2. Replace "your-org" with your GitHub organization/username
# 3. Replace "your-project" with your Firebase project ID
# 4. All NEXT_PUBLIC_* variables are exposed to the browser
# 5. Variables without NEXT_PUBLIC_ are server-side only
# 6. Never commit secrets or API keys to version control
# =============================================================================