.env.production.sample

.env.production.sample
# ===========================================
# Production Environment
# ===========================================
# Rename this file to .env.production and fill in the values.
#
# Vercel: push these with the Publish view in the Gallop AI Editor, or with
# `vercel env pull` / `vercel env add`.
# Cloudflare: run `npm run cf:secrets` to upload them as Worker secrets.
#
# Never commit .env.production — it holds real secrets.
# ===========================================
NEXT_PUBLIC_PRODUCTION_URL=https://yourdomain.com
# Mailgun — contact form delivery (/api/submit-form)
MAILGUN_API_KEY=your-mailgun-api-key-here
MAILGUN_DOMAIN_NAME=mg.yourdomain.com
MAILGUN_SMTP_MAIL=contact@yourdomain.com
MAILGUN_FROM_NAME="Your Business"
MAILGUN_TO_RECIPIENTS=sales@yourdomain.com
MAILGUN_DEV_MAIL=you@example.com
MAILGUN_DEV_NAME="Your Name"
FLOWTRACE_TO_RECIPIENTS=you@example.com
# OpenAI — /api/assistant. Build fails at page-data collection without these.
# MUST BE REPLACED PER CUSTOMER: OPENAI_VECTOR_STORE_ID must point at a vector
# store holding THIS company's product documentation. Pointing it at another
# company's store makes the site assistant answer confidently about products
# you do not sell.
OPENAI_API_KEY=your-openai-api-key-here
OPENAI_VECTOR_STORE_ID=vs_your-vector-store-id
# Cloudflare Turnstile — form spam protection.
# REQUIRED: the quote form runs with turnstile enabled. Without a site key the
# widget cannot issue a token and submissions fail verification.
NEXT_PUBLIC_CLOUDFLARE_TURNSTILE_SITE_KEY=your-turnstile-site-key
CLOUDFLARE_TURNSTILE_SECRET_KEY=your-turnstile-secret-key
# Analytics (optional)
NEXT_PUBLIC_GOOGLE_ANALYTICS=G-XXXXXXXXXX
NEXT_PUBLIC_GOOGLE_ADS_ID=AW-XXXXXXXXX

Support

Talk to the developers of this project to learn more

We have been building professional websites for big clients for over 15 years. Gallop templates and blocks is our best foundation for SEO websites and web apps.

© 2026 Web Plant Media, LLC