Skip to main content
Get Template — $89

Search AI Workflow Center

Search tools, categories, stacks, and pages

Guides

Configuration

Two layers: environment (build-time) and Settings (runtime).

The two layers

Environment variables set deploy-time identity — the canonical URL and metadata defaults baked into pages at build time. /admin/settings sets runtime identity — everything a visitor sees rendered: site name, logo text, brand color, social links, pricing copy, footer, and the built-in monetization prices.

ConcernWhere
Canonical URL, sitemaps, OG defaultsNEXT_PUBLIC_SITE_URL, NEXT_PUBLIC_SITE_NAME
Displayed name, wordmark, taglineSettings → Identity
Brand color (CSS --primary)Settings → Identity
Social links, community URLSettings → Author & links
Pricing amount & badgeSettings → Pricing
Template checkout URLSettings → Pricing
Fast-track & featured pricesSettings → Monetization
GA4 analyticsSettings → gaMeasurementId

A fresh clone renders correctly before any configuration exists — every setting has a hardcoded fallback (see SITE_SETTINGS_DEFAULTS in apps/web/lib/site-settings.ts).

Environment reference

See Environment variables for the annotated list. The only hard requirements are DATABASE_URL and BETTER_AUTH_SECRET; NEXT_PUBLIC_SITE_URL is required in production.

Pricing and checkout

The /template sales page and the /pricing page read these settings, so you can adjust your own product's price and copy without touching code:

  • Pricing amount & badge — the headline price shown on the sales and pricing pages.
  • Checkout URL — where the "buy" button points. Leave it empty and the button links to the internal /pricing page; set it to an external checkout link (Stripe Payment Link, Polar, Gumroad, etc.) and the button opens that instead. This is how you sell your own copy of the template, or anything else. If you don't resell the template, see Customization for removing the sales pages.

Monetization

The Monetization card controls the built-in Stripe revenue features:

  • Fast-track — enable/disable, and the price a visitor pays to jump the submission review queue.
  • Featured — enable/disable, the price, and how many days a paid placement stays pinned.

These toggles only take effect when Stripe keys are present in the environment; without them the paid options never render. Full details in Monetization.

Team and roles

/admin/team (owner/admin only) manages accounts:

  • owner — everything; created once by the setup wizard, cannot be demoted or removed
  • admin — content plus team, settings and API keys
  • editor — content only

Public sign-up is disabled by design; every account is created by an owner or admin.