TanstackTemplate
Customization

First Files To Touch

Change product identity before runtime behavior. This keeps the copied app runnable while making leaked source-template markers easy to find.

Product Identity

Start here:

GoalFiles
Rename the product and repositorypackage.json, README.md, AGENTS.md, docs/product-plan.md
Replace public architecture languagedocs/architecture.md, docs/compliance.md, docs/roadmap.md
Replace adoption defaultsdocs/template-adoption.manifest.example.json, docs/template-adoption.md

Then run:

pnpm template:scan-instance-markers

Public Offer

Replace the vertical product story before changing provider code:

GoalFiles
Landing offer and CTAapps/web/src/features/landing/landing-page.tsx
Public proof assetsapps/web/public/landing/*
Legal and safety posturedocs/compliance.md, apps/web/src/routes/privacy.tsx, apps/web/src/routes/terms.tsx, apps/web/src/routes/safety.tsx

Keep public copy away from named living artist style claims.

Product Workflow

After identity and offer are clean, update the product workflow layer. In the current source implementation this is an AI media workflow; in another product it may become chat, dashboarding, knowledge base search, internal tooling, or a different media generator.

GoalFiles
Domain package and plan capabilitiespackages/<product-domain>/src/*
Prompt, policy, or workflow rulesapps/web/src/features/<workflow>/*
Workspace UI copy and controlsapps/web/src/features/<workflow>/*, current source example: apps/web/src/features/conversion/*
Library behavior and labelsapps/web/src/features/<workflow>/*

Run the focused checks after each behavior pass:

pnpm check
pnpm test:e2e
pnpm report:provider-matrix

Cloudflare Resources

Replace deployment resources before remote deploy:

GoalFiles
Worker names, D1, R2, vars, routesapps/web/wrangler.jsonc
GitHub deploy defaults.github/workflows/cloudflare-deploy.yml
Staging and canary smoke defaults.github/workflows/staging-smoke.yml
Local env documentation.env.example, docs/operations/env-matrix.md

Then run:

pnpm doctor:config
pnpm verify:release-targets
pnpm template:scan-instance-markers -- --fail-on-markers

Extraction Boundary

Do not edit ../cloudflare-saas-core during first adoption. If a second product exposes a reusable primitive, record evidence first and extract only after both products still pass their local and staging gates.

On this page