Environment Variables
Environment Variables
The .env file is included in the project by default and should already be available in your project root directory. If for any reason it is missing, create a new file named .env in the root of the project and add the following variables:
Pay close attention to the URL formats below. Some variables require
https://, some do not, and some require a trailing slash. Incorrect URL
formatting is one of the most common causes of issues.
# ===========================================
# ProShot - Environment Variables
# ===========================================
# -------------------------------------------
# Supabase Configuration
# -------------------------------------------
# For example: https://abcdefghij.supabase.co
NEXT_PUBLIC_SUPABASE_URL=your-supabase-url
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY=your-supabase-publishable-key
SUPABASE_SECRET_KEY=your-supabase-secret-key
# -------------------------------------------
# App Configuration
# -------------------------------------------
# Full URL with https:// and no trailing slash
# For example: https://myapp.vercel.app
NEXT_PUBLIC_APP_URL=https://myapp.vercel.app
# -------------------------------------------
# Stripe Configuration
# -------------------------------------------
NEXT_PUBLIC_STRIPE_IS_ENABLED=true
STRIPE_PUBLISHABLE_KEY=your-stripe-publishable-key
STRIPE_SECRET_KEY=your-stripe-secret-key
STRIPE_WEBHOOK_SECRET=your-stripe-webhook-secret
# -------------------------------------------
# PayPal Configuration
# -------------------------------------------
# Production: https://api-m.paypal.com | Sandbox: https://api-m.sandbox.paypal.com
# Must include https:// and no trailing slash
PAYPAL_API_URL=https://api-m.paypal.com
NEXT_PUBLIC_PAYPAL_CLIENT_ID=your-paypal-client-id
PAYPAL_CLIENT_SECRET=your-paypal-client-secret
# -------------------------------------------
# Razorpay Configuration
# -------------------------------------------
NEXT_PUBLIC_RAZORPAY_KEY_ID=your-razorpay-key-id
RAZORPAY_KEY_SECRET=your-razorpay-key-secret
# -------------------------------------------
# Flutterwave Configuration
# -------------------------------------------
NEXT_PUBLIC_FLUTTERWAVE_PUBLIC_KEY=your-flutterwave-public-key
FLUTTERWAVE_SECRET_KEY=your-flutterwave-secret-key
FLUTTERWAVE_ENCRYPTION_KEY=your-flutterwave-encryption-key
# -------------------------------------------
# Astria AI Configuration
# -------------------------------------------
ASTRIA_API_KEY=your-astria-api-key
# Domain only, no https:// and no trailing slash
# For example: myapp.vercel.app
ASTRIA_WEBHOOK_URL=myapp.vercel.app
# -------------------------------------------
# Gemini AI Configuration (Magic Editor)
# -------------------------------------------
GEMINI_API_KEY=your-gemini-api-key
# -------------------------------------------
# Resend Email Configuration
# -------------------------------------------
RESEND_API_KEY=your-resend-api-key
RESEND_SENDER_EMAIL=Your App <noreply@yourdomain.com>
# -------------------------------------------
# Google Analytics
# -------------------------------------------
# Full script URL including https://
# For example: https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX
NEXT_PUBLIC_GOOGLE_ANALYTICS_ID=https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX
NEXT_PUBLIC_GOOGLE_ANALYTICS_ID_VALUE=G-XXXXXXXXXXEach variable is explained in detail in the relevant section of the documentation (Astria, Resend, Payment Gateways, etc.). For now, just make sure this file exists in your project root.
ProShot uses a production Supabase instance for both local development and production. If you prefer to run Supabase entirely on your own infrastructure, refer to the official Supabase self-hosting docs.
This is how your project root directory should look after creating the .env file: