coldstart

Configuration

The .coldstart.json schema, all options, constraints, and domain presets

.coldstart.json schema

Every scaffold saves a .coldstart.json that captures all options. Here's the full schema:

FieldTypeRequiredDescription
namestringYesLowercase alphanumeric + dashes
displayNamestringYesHuman-readable name
descriptionstringYesShort project description
packageScopestringYesnpm scope, e.g. @myapp
platformsstring[]Yesweb, mobile, desktop, api (min 1)
webModestringIf weblanding, app, landing+app
domainstringYesSee domain presets below
billingstringYesnone, freemium, subscription, one-time, credits, per-seat, multi-tier
billingProviderstringYespolar (default), stripe
i18nbooleanYesEnable internationalization
localesstring[]Yese.g. ["en", "fr"] (min 1 if i18n)
multiTenantbooleanYesOrganization support
rbacbooleanYesRole-based access (requires multiTenant)
oauthProvidersstring[]Nogoogle, github, apple

Constraints

These are enforced at validation time — invalid configs are rejected with clear error messages.

  • Desktop requires web — auto-added in interactive mode
  • Per-seat billing requires multiTenant — auto-enabled
  • RBAC requires multiTenant
  • webMode is required when web is in platforms
  • At least 1 locale required when i18n is enabled

Platforms

PlatformCLIStack
webcreate-next-appNext.js 16, Tailwind v4, shadcn/ui, next-themes
mobilecreate-expo-appExpo 55, React Native 0.83, Uniwind, HeroUI Native
desktopGeneratedTauri 2, shared web frontend, Rust backend
apiGeneratedHono, Better Auth, Drizzle ORM, Neon, Docker

Web modes

ModeDescription
landingMarketing/SEO page. Hero section, no auth routes.
appDashboard/SaaS. Sidebar layout, auth routes, admin panel.
landing+appBoth. Public landing + authenticated app section.

Billing models

ModelKey fieldMiddlewareProvider support
freemiumisPremiumrequirePremiumStripe, Polar, RevenueCat
subscriptionsubscriptionStatusrequireSubscriptionStripe, Polar, RevenueCat
one-timesubscriptionStatusrequirePaymentStripe, Polar, RevenueCat
creditscredits + transaction logrequireCredits(n)Stripe, Polar, RevenueCat
per-seatmaxSeatscheckSeatLimitStripe, Polar
multi-tiertierrequireTier(min)Stripe, Polar, RevenueCat

Domain presets

Each domain injects specific guidelines into CLAUDE.md. These steer all AI development toward industry best practices.

Generated AI context

Every project gets three AI integration points:

WhatLocationPurpose
CLAUDE.mdRootStack, domain rules, conventions, commands, how-to guides
Skillsscripts/install-skills.sh5–40 Claude Code skills per platform
MCP servers.claude/settings.jsonNeon, Vercel, Polar, RevenueCat, Resend, Expo

The skills and MCP servers are conditional — a web-only project gets Vercel + Tailwind + React skills; a fullstack project gets everything.

On this page