1+ # --- Core / Environment
2+ APP_ENV =
3+ APP_URL =
4+ NEXT_PUBLIC_SITE_URL =
5+
6+ # --- Database
17DATABASE_URL =
8+
9+ # --- Auth (app)
210AUTH_SECRET =
311
4- CLOUDINARY_CLOUD_NAME =
12+ # --- OAuth: Google
13+ GOOGLE_CLIENT_ID_DEVELOP =
14+ GOOGLE_CLIENT_ID_LOCAL =
15+ GOOGLE_CLIENT_ID_PROD =
16+ GOOGLE_CLIENT_REDIRECT_URI_DEVELOP =
17+ GOOGLE_CLIENT_REDIRECT_URI_LOCAL =
18+ GOOGLE_CLIENT_REDIRECT_URI_PROD =
19+ GOOGLE_CLIENT_SECRET_DEVELOP =
20+ GOOGLE_CLIENT_SECRET_LOCAL =
21+ GOOGLE_CLIENT_SECRET_PROD =
22+
23+ # --- OAuth: GitHub
24+ GITHUB_CLIENT_ID_DEVELOP =
25+ GITHUB_CLIENT_ID_LOCAL =
26+ GITHUB_CLIENT_ID_PROD =
27+ GITHUB_CLIENT_REDIRECT_URI_DEVELOP =
28+ GITHUB_CLIENT_REDIRECT_URI_LOCAL =
29+ GITHUB_CLIENT_REDIRECT_URI_PROD =
30+ GITHUB_CLIENT_SECRET_DEVELOP =
31+ GITHUB_CLIENT_SECRET_LOCAL =
32+ GITHUB_CLIENT_SECRET_PROD =
33+
34+ # --- Cloudinary
535CLOUDINARY_API_KEY =
636CLOUDINARY_API_SECRET =
37+ CLOUDINARY_CLOUD_NAME =
738CLOUDINARY_UPLOAD_FOLDER =
8-
939CLOUDINARY_URL =
10- ENABLE_ADMIN_API =
1140
41+ # --- Payments (Stripe)
42+ NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY =
1243PAYMENTS_ENABLED =
13- NEXT_PUBLIC_PAYMENTS_ENABLED =
44+ # Options: test, live (defaults to test in development, live in production)
45+ STRIPE_MODE =
1446STRIPE_SECRET_KEY =
1547STRIPE_WEBHOOK_SECRET =
1648
17- STRIPE_MODE =
18- NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY =
49+ # --- Admin / Internal ops
50+ ENABLE_ADMIN_API =
51+ INTERNAL_JANITOR_MIN_INTERVAL_SECONDS =
52+ INTERNAL_JANITOR_SECRET =
53+ JANITOR_URL =
1954
20- NEXT_PUBLIC_SITE_URL =
21- NEXT_PUBLIC_SITE_URL =
55+ # --- Quiz
56+ QUIZ_ENCRYPTION_KEY =
2257
58+ # --- Telegram
2359TELEGRAM_BOT_TOKEN =
2460TELEGRAM_CHAT_ID =
2561
26- GOOGLE_CLIENT_ID =
27- GOOGLE_CLIENT_SECRET =
28- GOOGLE_CLIENT_REDIRECT_URI_LOCAL =
29- GOOGLE_CLIENT_REDIRECT_URI_DEVELOP =
30- GOOGLE_CLIENT_REDIRECT_URI_PROD =
62+ # --- Email (Gmail SMTP)
63+ EMAIL_FROM =
64+ GMAIL_APP_PASSWORD =
65+ GMAIL_USER =
3166
32- GITHUB_CLIENT_ID_DEVELOP =
33- GITHUB_CLIENT_SECRET_DEVELOP =
34- GITHUB_CLIENT_REDIRECT_URI_DEVELOP =
67+ # --- Security
68+ CSRF_SECRET =
3569
36- APP_ENV =
70+ CHECKOUT_RATE_LIMIT_MAX = 10
71+ CHECKOUT_RATE_LIMIT_WINDOW_SECONDS = 300
3772
38- INTERNAL_JANITOR_SECRET =
39- INTERNAL_JANITOR_MIN_INTERVAL_SECONDS = 60
40- JANITOR_URL =
73+ STRIPE_WEBHOOK_INVALID_SIG_RL_MAX = 30
74+ STRIPE_WEBHOOK_INVALID_SIG_RL_WINDOW_SECONDS = 60
75+
76+ # emergency switch
77+ RATE_LIMIT_DISABLED = 0
0 commit comments