create-ailk 0.6.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +87 -14
- package/component-catalog.json +735 -95
- package/component-catalog.md +13 -7
- package/dist/add-module-core.d.ts +22 -0
- package/dist/add-module-core.js +50 -0
- package/dist/add-module.d.ts +89 -0
- package/dist/add-module.js +334 -0
- package/dist/category-profile.d.ts +126 -0
- package/dist/category-profile.js +262 -0
- package/dist/cli.js +89 -29
- package/dist/index.d.ts +4 -2
- package/dist/index.js +6 -1
- package/dist/lib/extract-module-bundle.d.ts +56 -1
- package/dist/lib/extract-module-bundle.js +170 -14
- package/dist/lib/license-key-files.d.ts +15 -0
- package/dist/lib/license-key-files.js +102 -0
- package/dist/lib/module-license-gate.d.ts +79 -0
- package/dist/lib/module-license-gate.js +160 -12
- package/dist/lib/module-tier.d.ts +45 -16
- package/dist/lib/module-tier.js +76 -0
- package/dist/lib/pro-callout.d.ts +16 -10
- package/dist/lib/pro-callout.js +34 -3
- package/dist/license-set.d.ts +34 -0
- package/dist/license-set.js +194 -0
- package/dist/module-architecture.d.ts +20 -0
- package/dist/module-architecture.js +77 -19
- package/dist/modules/commerce/0.6.1.tar.gz +0 -0
- package/dist/modules/docs-blog/0.6.1.tar.gz +0 -0
- package/dist/modules/marketing-site/0.6.1.tar.gz +0 -0
- package/dist/modules/minimalism-site/0.6.1.tar.gz +0 -0
- package/dist/modules/multi-tenant/0.6.1.tar.gz +0 -0
- package/dist/modules/saas-product/0.6.1.tar.gz +0 -0
- package/dist/modules/scheduling/0.6.1.tar.gz +0 -0
- package/dist/modules/signal-collectors/0.6.1.tar.gz +0 -0
- package/dist/modules/simple-service/0.6.1.tar.gz +0 -0
- package/dist/modules/workspace/0.6.1.tar.gz +0 -0
- package/dist/parse-args.d.ts +85 -10
- package/dist/parse-args.js +227 -15
- package/dist/programmatic.d.ts +81 -5
- package/dist/programmatic.js +291 -32
- package/dist/site-chrome.d.ts +18 -7
- package/dist/site-chrome.js +32 -14
- package/dist/site-roster.d.ts +127 -0
- package/dist/site-roster.js +499 -0
- package/dist/starter-grid.d.ts +216 -0
- package/dist/starter-grid.js +449 -0
- package/dist/surfaces.d.ts +20 -7
- package/dist/surfaces.js +204 -24
- package/dist/sync-routes.d.ts +9 -0
- package/dist/sync-routes.js +2 -2
- package/dist/template-manifest.d.ts +94 -19
- package/dist/template-manifest.js +170 -289
- package/dist/template-names.d.ts +14 -12
- package/dist/template-names.js +13 -17
- package/package.json +6 -4
- package/site-templates/_base/content/en/BookCall/book-call.mdx +52 -0
- package/site-templates/_base/content/en/Feature/feature-1.mdx +69 -0
- package/site-templates/_base/content/en/Feature/feature-2.mdx +69 -0
- package/site-templates/_base/content/en/Feature/feature-3.mdx +69 -0
- package/site-templates/_base/content/en/FeaturesList/features.mdx +91 -0
- package/site-templates/_base/content/en/GlossaryList/glossary.mdx +65 -0
- package/site-templates/_base/content/en/NewsletterSignup/newsletter.mdx +67 -0
- package/site-templates/_base/content/en/PortfolioItem/sample-four.mdx +105 -0
- package/site-templates/_base/content/en/PortfolioItem/sample-one.mdx +34 -0
- package/site-templates/_base/content/en/PortfolioItem/sample-three.mdx +94 -0
- package/site-templates/_base/content/en/PortfolioItem/sample-two.mdx +45 -0
- package/site-templates/_base/content/en/PortfolioList/portfolio.mdx +169 -0
- package/site-templates/_base/content/en/Pricing/pricing.mdx +71 -62
- package/site-templates/_base/content/en/PrivacyPage/privacy.mdx +17 -3
- package/site-templates/_base/content/en/TermsPage/terms.mdx +2 -3
- package/site-templates/_base/content/en/UseCase/persona-1.mdx +69 -0
- package/site-templates/_base/content/en/UseCase/persona-2.mdx +69 -0
- package/site-templates/_base/content/en/UseCase/persona-3.mdx +69 -0
- package/site-templates/designs/minimalism/DESIGN.md +162 -0
- package/site-templates/designs/standard/DESIGN.md +167 -0
- package/site-templates/marketing-site/DESIGN.md +59 -40
- package/site-templates/marketing-site/TEMPLATE-MANIFEST.json +376 -57
- package/site-templates/marketing-site/TEMPLATE-MANIFEST.md +230 -90
- package/site-templates/marketing-site/ailk-template.json +1 -0
- package/site-templates/marketing-site-free/DESIGN.md +59 -40
- package/site-templates/marketing-site-free/TEMPLATE-MANIFEST.json +323 -63
- package/site-templates/marketing-site-free/TEMPLATE-MANIFEST.md +323 -113
- package/site-templates/marketing-site-free/ailk-template.json +3 -2
- package/site-templates/marketing-site-free/content/en/NewsletterSignup/newsletter.mdx +59 -0
- package/site-templates/marketing-site-free/content/en/Pricing/pricing.mdx +199 -0
- package/site-templates/minimalism-site/DESIGN.md +54 -40
- package/site-templates/minimalism-site/TEMPLATE-MANIFEST.json +246 -19
- package/site-templates/minimalism-site/TEMPLATE-MANIFEST.md +173 -51
- package/site-templates/minimalism-site/ailk-template.json +3 -2
- package/site-templates/minimalism-site/content/en/BookCall/book-call.mdx +52 -0
- package/site-templates/minimalism-site/content/en/ContactPage/contact.mdx +3 -37
- package/site-templates/minimalism-site/content/en/PurchasePolicyPage/purchase-policy.mdx +123 -0
- package/site-templates/saas-product/DESIGN.md +59 -40
- package/site-templates/saas-product/TEMPLATE-MANIFEST.md +9 -1
- package/site-templates/shapes/local-business-service/TEMPLATE-MANIFEST.json +369 -0
- package/site-templates/shapes/local-business-service/TEMPLATE-MANIFEST.md +302 -0
- package/site-templates/shapes/local-business-service/ailk-template.json +10 -0
- package/site-templates/{simple-service → shapes/local-business-service}/content/en/AboutPage/about.mdx +4 -4
- package/site-templates/shapes/local-business-service/content/en/HomePage/home.mdx +70 -0
- package/site-templates/shapes/local-business-service/content/en/NewsletterSignup/newsletter.mdx +59 -0
- package/site-templates/shapes/local-business-service/content/en/PortfolioList/portfolio.mdx +171 -0
- package/site-templates/shapes/local-business-service/content/en/PurchasePolicyPage/purchase-policy.mdx +123 -0
- package/site-templates/shapes/local-business-service/content/en/Service/first-job.mdx +39 -0
- package/site-templates/shapes/local-business-service/content/en/Service/second-job.mdx +39 -0
- package/site-templates/shapes/local-business-service/content/en/Service/third-job.mdx +39 -0
- package/site-templates/shapes/local-business-service/content/en/ServicesList/services.mdx +61 -0
- package/site-templates/shapes/local-business-service/provenance.json +4 -0
- package/site-templates/shapes/organization-service/TEMPLATE-MANIFEST.json +362 -0
- package/site-templates/shapes/organization-service/TEMPLATE-MANIFEST.md +300 -0
- package/site-templates/shapes/organization-service/ailk-template.json +10 -0
- package/site-templates/shapes/organization-service/content/en/AboutPage/about.mdx +38 -0
- package/site-templates/shapes/organization-service/content/en/HomePage/home.mdx +85 -0
- package/site-templates/shapes/organization-service/content/en/NewsletterSignup/newsletter.mdx +59 -0
- package/site-templates/shapes/organization-service/content/en/PortfolioList/portfolio.mdx +171 -0
- package/site-templates/shapes/organization-service/content/en/PurchasePolicyPage/purchase-policy.mdx +123 -0
- package/site-templates/shapes/organization-service/content/en/Service/first-engagement.mdx +38 -0
- package/site-templates/shapes/organization-service/content/en/Service/second-engagement.mdx +38 -0
- package/site-templates/shapes/organization-service/content/en/Service/third-engagement.mdx +38 -0
- package/site-templates/shapes/organization-service/content/en/ServicesList/services.mdx +72 -0
- package/site-templates/shapes/organization-service/provenance.json +4 -0
- package/site-templates/shapes/person-service/TEMPLATE-MANIFEST.json +369 -0
- package/site-templates/shapes/person-service/TEMPLATE-MANIFEST.md +299 -0
- package/site-templates/shapes/person-service/ailk-template.json +10 -0
- package/site-templates/shapes/person-service/content/_site.mdx +85 -0
- package/site-templates/shapes/person-service/content/en/AboutPage/about.mdx +39 -0
- package/site-templates/shapes/person-service/content/en/HomePage/home.mdx +97 -0
- package/site-templates/shapes/person-service/content/en/NewsletterSignup/newsletter.mdx +59 -0
- package/site-templates/shapes/person-service/content/en/PortfolioList/portfolio.mdx +169 -0
- package/site-templates/shapes/person-service/content/en/PurchasePolicyPage/purchase-policy.mdx +123 -0
- package/site-templates/shapes/person-service/content/en/Service/first-engagement.mdx +38 -0
- package/site-templates/shapes/person-service/content/en/Service/second-engagement.mdx +38 -0
- package/site-templates/shapes/person-service/content/en/Service/third-engagement.mdx +38 -0
- package/site-templates/{simple-service → shapes/person-service}/content/en/ServicesList/services.mdx +16 -16
- package/site-templates/shapes/person-service/provenance.json +4 -0
- package/templates/.claude/settings.json +15 -0
- package/templates/.claude/skills/README.md +10 -9
- package/templates/.claude/skills/{scaffold-auth → add-auth}/SKILL.md +7 -7
- package/templates/.claude/skills/{scaffold-auth → add-auth}/references/env-vars.md +2 -2
- package/templates/.claude/skills/{scaffold-auth → add-auth}/references/oauth-app-setup.md +3 -3
- package/templates/.claude/skills/{scaffold-page → add-page}/SKILL.md +76 -62
- package/templates/.claude/skills/add-page/references/page-types.md +115 -0
- package/templates/.claude/skills/{scaffold-page → add-page}/templates/content.mdx.tmpl +4 -4
- package/templates/.claude/skills/{scaffold-page → add-page}/templates/route.tsx.tmpl +1 -1
- package/templates/.claude/skills/{audit-site → check-site}/SKILL.md +16 -17
- package/templates/.claude/skills/{audit-site → check-site}/references/common-errors.md +3 -3
- package/templates/.claude/skills/{audit-site → check-site}/references/findings-glossary.md +16 -14
- package/templates/.claude/skills/{audit-site → check-site}/references/severity-levels.md +1 -1
- package/templates/.claude/skills/fill-page/SKILL.md +180 -0
- package/templates/.claude/skills/fill-page/profiles/plumbing.yaml +80 -0
- package/templates/.claude/skills/fill-page/references/section-sources.md +41 -0
- package/templates/.claude/skills/setup-database/SKILL.md +156 -0
- package/templates/.claude/skills/setup-database/scripts/verify-inbox.ts +154 -0
- package/templates/.claude/skills/{provision-config → setup-deploy}/SKILL.md +73 -41
- package/templates/.claude/skills/{provision-config → setup-deploy}/references/env-vars-template.md +21 -30
- package/templates/.claude/skills/setup-deploy/references/runbook-template.md +204 -0
- package/templates/.claude/skills/{provision-config → setup-deploy}/references/vercel-json-template.md +1 -1
- package/templates/.claude/skills/upgrade-plan/SKILL.md +117 -0
- package/templates/.claude/skills/upgrade-plan/references/options.md +24 -0
- package/templates/.claude/skills/upgrade-plan/scripts/upgrade-plan.ts +527 -0
- package/templates/.github/workflows/ci.yml +5 -0
- package/templates/CLAUDE.md +8 -2
- package/templates/DESIGN.md +56 -44
- package/templates/README.md +116 -46
- package/templates/apps/api/.env.example +2 -1
- package/templates/apps/api/CLAUDE.md +3 -2
- package/templates/apps/api/package.json +1 -1
- package/templates/apps/api/src/config/__tests__/index.test.ts +146 -10
- package/templates/apps/api/src/config/index.ts +46 -14
- package/templates/apps/api/src/lib/__tests__/lead-capture-store.test.ts +30 -0
- package/templates/apps/api/src/lib/__tests__/lead-delivery.test.ts +96 -0
- package/templates/apps/api/src/lib/lead-capture-store.ts +12 -0
- package/templates/apps/api/src/lib/lead-delivery.ts +52 -0
- package/templates/apps/api/src/lib/license-key-store.ts +45 -0
- package/templates/apps/api/src/lib/site.ts +5 -3
- package/templates/apps/api/src/middleware/__tests__/auth.database-not-configured.test.ts +97 -0
- package/templates/apps/api/src/middleware/auth.ts +9 -0
- package/templates/apps/api/src/openapi/spec.ts +63 -12
- package/templates/apps/api/src/routes/content/__tests__/get-page.test.ts +127 -5
- package/templates/apps/api/src/routes/content/get-page.ts +86 -2
- package/templates/apps/api/src/routes/leads/__tests__/capture.test.ts +88 -0
- package/templates/apps/api/src/routes/leads/__tests__/index.test.ts +100 -0
- package/templates/apps/api/src/routes/leads/index.ts +46 -1
- package/templates/apps/api/src/server.ts +13 -0
- package/templates/apps/api/src/services/__tests__/lead-routing.test.ts +194 -0
- package/templates/apps/api/src/services/__tests__/leads-inbox.test.ts +124 -0
- package/templates/apps/api/src/services/lead-routing.ts +140 -30
- package/templates/apps/api/src/services/leads-inbox.ts +48 -11
- package/templates/apps/mcp/__tests__/audit-single-page.test.ts +75 -1
- package/templates/apps/mcp/__tests__/lib/audit-single-page-readiness-scan.test.ts +57 -9
- package/templates/apps/mcp/__tests__/parity.test.ts +5 -4
- package/templates/apps/mcp/package.json +2 -1
- package/templates/apps/mcp/src/index.ts +7 -0
- package/templates/apps/mcp/src/lib/audit-single-page.ts +36 -10
- package/templates/apps/mcp/src/lib/license-key-store.ts +45 -0
- package/templates/apps/mcp/src/tools/create_project.ts +21 -6
- package/templates/apps/web/__tests__/setup.ts +18 -0
- package/templates/apps/web/app/[locale]/(auth)/forgot-password/forgot-password-card.tsx +10 -2
- package/templates/apps/web/app/[locale]/(auth)/layout.tsx +2 -2
- package/templates/apps/web/app/[locale]/(auth)/reset-password/reset-password-card.tsx +10 -4
- package/templates/apps/web/app/[locale]/(auth)/sign-in/sign-in-card.tsx +22 -14
- package/templates/apps/web/app/[locale]/(auth)/sign-up/sign-up-card.tsx +26 -18
- package/templates/apps/web/app/[locale]/(authed)/account/page.tsx +12 -4
- package/templates/apps/web/app/[locale]/[slug]/__tests__/page.test.tsx +35 -4
- package/templates/apps/web/app/[locale]/[slug]/page.tsx +49 -9
- package/templates/apps/web/app/[locale]/book-a-call/page.tsx +50 -0
- package/templates/apps/web/app/[locale]/careers/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/case-studies/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/clients/__tests__/page-renderer-migration.test.tsx +3 -4
- package/templates/apps/web/app/[locale]/contact/ConversationalIntakeWrapper.tsx +67 -29
- package/templates/apps/web/app/[locale]/contact/__tests__/ConversationalIntakeWrapper.test.tsx +94 -11
- package/templates/apps/web/app/[locale]/contact/__tests__/contact-form-text.test.ts +32 -0
- package/templates/apps/web/app/[locale]/contact/__tests__/contact.actions.test.ts +129 -0
- package/templates/apps/web/app/[locale]/contact/__tests__/page-renderer-migration.test.tsx +228 -86
- package/templates/apps/web/app/[locale]/contact/contact-form-text.ts +50 -0
- package/templates/apps/web/app/[locale]/contact/contact.actions.ts +73 -20
- package/templates/apps/web/app/[locale]/contact/page.tsx +115 -7
- package/templates/apps/web/app/[locale]/contact/site-contact-email.ts +54 -0
- package/templates/apps/web/app/[locale]/courses/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/downloads/__tests__/page-renderer-migration.test.tsx +3 -4
- package/templates/apps/web/app/[locale]/events/__tests__/page-renderer-migration.test.tsx +4 -5
- package/templates/apps/web/app/[locale]/features/[slug]/page.tsx +64 -0
- package/templates/apps/web/app/[locale]/features/page.tsx +52 -0
- package/templates/apps/web/app/[locale]/glossary/page.tsx +50 -0
- package/templates/apps/web/app/[locale]/how-to/__tests__/page-renderer-migration.test.tsx +1 -1
- package/templates/apps/web/app/[locale]/how-to/page.tsx +25 -15
- package/templates/apps/web/app/[locale]/integrations/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/layout.tsx +146 -52
- package/templates/apps/web/app/[locale]/newsletter/__tests__/newsletter.actions.test.ts +75 -0
- package/templates/apps/web/app/[locale]/newsletter/__tests__/page.test.tsx +163 -0
- package/templates/apps/web/app/[locale]/newsletter/newsletter.actions.ts +66 -0
- package/templates/apps/web/app/[locale]/newsletter/page.tsx +142 -0
- package/templates/apps/web/app/[locale]/partners/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/portfolio/[slug]/page.tsx +59 -0
- package/templates/apps/web/app/[locale]/portfolio/page.tsx +49 -0
- package/templates/apps/web/app/[locale]/products/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/projects/__tests__/page-renderer-migration.test.tsx +4 -5
- package/templates/apps/web/app/[locale]/{cancellation → purchase-policy}/page.tsx +15 -10
- package/templates/apps/web/app/[locale]/resources/__tests__/page-renderer-migration.test.tsx +4 -5
- package/templates/apps/web/app/[locale]/services/__tests__/page-renderer-migration.test.tsx +3 -3
- package/templates/apps/web/app/[locale]/software/[slug]/page.tsx +14 -1
- package/templates/apps/web/app/[locale]/software/__tests__/page-renderer-migration.test.tsx +1 -1
- package/templates/apps/web/app/[locale]/software/page.tsx +25 -15
- package/templates/apps/web/app/[locale]/tech-articles/__tests__/page-renderer-migration.test.tsx +1 -1
- package/templates/apps/web/app/[locale]/tech-articles/page.tsx +25 -15
- package/templates/apps/web/app/[locale]/testimonials/__tests__/page-renderer-migration.test.tsx +3 -4
- package/templates/apps/web/app/[locale]/use-cases/[slug]/page.tsx +63 -0
- package/templates/apps/web/app/[locale]/use-cases/__tests__/page-renderer-migration.test.tsx +3 -4
- package/templates/apps/web/app/[locale]/use-cases/page.tsx +15 -2
- package/templates/apps/web/app/[locale]/whitepapers/__tests__/page-renderer-migration.test.tsx +1 -1
- package/templates/apps/web/app/[locale]/whitepapers/page.tsx +25 -15
- package/templates/apps/web/app/error-fallback.tsx +17 -45
- package/templates/apps/web/app/not-found.tsx +14 -38
- package/templates/apps/web/app/og/route.tsx +6 -0
- package/templates/apps/web/eslint.config.mjs +3 -0
- package/templates/apps/web/instrumentation.ts +14 -0
- package/templates/apps/web/lib/__tests__/structured-data.test.tsx +38 -0
- package/templates/apps/web/lib/license-key-store.ts +52 -0
- package/templates/apps/web/lib/nav-config.ts +82 -18
- package/templates/apps/web/lib/prisma-for-auth.ts +9 -6
- package/templates/apps/web/lib/site-brand.tsx +1 -1
- package/templates/apps/web/lib/site-chrome.ts +3 -3
- package/templates/apps/web/lib/site-identity.ts +148 -0
- package/templates/apps/web/lib/site-theme.ts +11 -0
- package/templates/apps/web/messages/en.json +78 -37
- package/templates/apps/web/public/android-chrome-192x192.png +0 -0
- package/templates/apps/web/public/android-chrome-512x512.png +0 -0
- package/templates/apps/web/public/apple-touch-icon.png +0 -0
- package/templates/apps/web/public/favicon-16x16.png +0 -0
- package/templates/apps/web/public/favicon-32x32.png +0 -0
- package/templates/apps/web/public/favicon.ico +0 -0
- package/templates/apps/web/public/favicon.svg +3 -3
- package/templates/apps/web/public/logomark.svg +6 -3
- package/templates/apps/web/public/logos/ai-launch-kit-light.svg +4 -0
- package/templates/apps/web/public/logos/ai-launch-kit.svg +4 -0
- package/templates/apps/web/public/logos/atomic-agent-light.svg +4 -0
- package/templates/apps/web/public/logos/atomic-agent.svg +4 -0
- package/templates/apps/web/public/logos/salessmyth-light.svg +4 -0
- package/templates/apps/web/public/logos/salessmyth.svg +4 -0
- package/templates/apps/web/public/site.webmanifest +4 -4
- package/templates/apps/web/public/wordmark-light.svg +4 -0
- package/templates/apps/web/public/wordmark.svg +3 -3
- package/templates/apps/web/security-headers.config.ts +5 -1
- package/templates/content/_site.mdx +25 -0
- package/templates/content/en/AboutPage/about.mdx +150 -144
- package/templates/content/en/BlogList/blog.mdx +126 -0
- package/templates/content/en/ContactPage/contact.mdx +21 -92
- package/templates/content/en/FAQPage/faq.mdx +86 -57
- package/templates/content/en/HomePage/home.mdx +268 -217
- package/templates/content/en/PurchasePolicyPage/purchase-policy.mdx +181 -0
- package/templates/content/en/UseCasesList/use-cases.mdx +170 -0
- package/templates/database/CHANGELOG.md +14 -0
- package/templates/database/package.json +1 -1
- package/templates/package.json +3 -1
- package/templates/tools/lint-architecture.ts +315 -0
- package/templates/tools/tsconfig.json +14 -0
- package/versions.json +33 -33
- package/site-templates/simple-service/DESIGN.md +0 -148
- package/site-templates/simple-service/TEMPLATE-MANIFEST.json +0 -240
- package/site-templates/simple-service/TEMPLATE-MANIFEST.md +0 -278
- package/site-templates/simple-service/ailk-template.json +0 -10
- package/site-templates/simple-service/content/en/ContactPage/contact.mdx +0 -67
- package/site-templates/simple-service/content/en/FAQPage/faq.mdx +0 -56
- package/site-templates/simple-service/content/en/HomePage/home.mdx +0 -85
- package/site-templates/simple-service/content/en/Service/landscape-design.mdx +0 -40
- package/site-templates/simple-service/content/en/Service/lawn-maintenance.mdx +0 -40
- package/site-templates/simple-service/content/en/Service/seasonal-cleanup.mdx +0 -40
- package/site-templates/simple-service/provenance.json +0 -4
- package/templates/.claude/skills/add-schema/SKILL.md +0 -277
- package/templates/.claude/skills/add-schema/references/conflict-handling.md +0 -200
- package/templates/.claude/skills/add-schema/references/file-finding.md +0 -123
- package/templates/.claude/skills/add-schema/references/schema-types.md +0 -234
- package/templates/.claude/skills/provision-config/references/runbook-template.md +0 -248
- package/templates/.claude/skills/scaffold-page/references/page-types.md +0 -169
- package/templates/.claude/skills/suggest-site-pages/SKILL.md +0 -242
- package/templates/.claude/skills/suggest-site-pages/references/categories.md +0 -287
- package/templates/apps/web/app/[locale]/contact/ContactForm.tsx +0 -150
- package/templates/apps/web/app/[locale]/returns/page.tsx +0 -44
- package/templates/apps/web/app/[locale]/shipping/page.tsx +0 -44
- package/templates/content/en/CancellationPolicyPage/cancellation.mdx +0 -108
- package/templates/content/en/LandingPage/blog.mdx +0 -83
- package/templates/content/en/LandingPage/features.mdx +0 -103
- package/templates/content/en/LandingPage/how-it-works.mdx +0 -143
- package/templates/content/en/ReturnsPolicyPage/returns.mdx +0 -108
- package/templates/content/en/ShippingPolicyPage/shipping.mdx +0 -108
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "PortfolioItem"
|
|
3
|
+
slug: "sample-three"
|
|
4
|
+
title: "{Example three}: before and after"
|
|
5
|
+
description: "{One line on what changed and why it mattered}"
|
|
6
|
+
publishedAt: "2026-01-01"
|
|
7
|
+
sections:
|
|
8
|
+
[
|
|
9
|
+
{
|
|
10
|
+
"id": "compare",
|
|
11
|
+
"type": "before-after",
|
|
12
|
+
"data":
|
|
13
|
+
{
|
|
14
|
+
"header":
|
|
15
|
+
{
|
|
16
|
+
"headline": "{Example three}: before and after",
|
|
17
|
+
"tagline": "{One line on what changed and why it mattered}",
|
|
18
|
+
},
|
|
19
|
+
"pager":
|
|
20
|
+
{
|
|
21
|
+
"prev":
|
|
22
|
+
{ "label": "{Example two}", "href": "/portfolio/sample-two" },
|
|
23
|
+
"next":
|
|
24
|
+
{
|
|
25
|
+
"label": "{Example four}",
|
|
26
|
+
"href": "/portfolio/sample-four",
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
"before":
|
|
30
|
+
{
|
|
31
|
+
"label": "Before",
|
|
32
|
+
"icon": "x-circle",
|
|
33
|
+
"rows":
|
|
34
|
+
[
|
|
35
|
+
{
|
|
36
|
+
"title": "{Content}",
|
|
37
|
+
"body": "{One or two sentences on the before content \u2014 what it says and how it reads}",
|
|
38
|
+
"icon": "file-text",
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"title": "{Structure}",
|
|
42
|
+
"body": "{One or two sentences on how the before is organized}",
|
|
43
|
+
"icon": "list",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"title": "{Examples}",
|
|
47
|
+
"body": "{One or two sentences on the proof the before offers}",
|
|
48
|
+
"icon": "link",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"title": "{Conclusion}",
|
|
52
|
+
"body": "{One or two sentences on where the before leaves the reader}",
|
|
53
|
+
"icon": "more-horizontal",
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
"verdict": "{One sentence: why the before fell short}",
|
|
57
|
+
},
|
|
58
|
+
"after":
|
|
59
|
+
{
|
|
60
|
+
"label": "After",
|
|
61
|
+
"icon": "check-circle",
|
|
62
|
+
"rows":
|
|
63
|
+
[
|
|
64
|
+
{
|
|
65
|
+
"title": "{Content}",
|
|
66
|
+
"body": "{One or two sentences on the after content \u2014 what it says and how it reads \u2014 with the **strongest phrase in bold**}",
|
|
67
|
+
"icon": "target",
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"title": "{Structure}",
|
|
71
|
+
"body": "{One or two sentences on how the after is organized \u2014 with the **strongest phrase in bold**}",
|
|
72
|
+
"icon": "list",
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"title": "{Examples}",
|
|
76
|
+
"body": "{One or two sentences on the proof the after offers \u2014 with the **strongest phrase in bold**}",
|
|
77
|
+
"icon": "star",
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"title": "{Conclusion}",
|
|
81
|
+
"body": "{One or two sentences on where the after leaves the reader \u2014 with the **strongest phrase in bold**}",
|
|
82
|
+
"icon": "user",
|
|
83
|
+
},
|
|
84
|
+
],
|
|
85
|
+
"verdict": "{One sentence: what the after achieves}",
|
|
86
|
+
},
|
|
87
|
+
"takeaway":
|
|
88
|
+
{
|
|
89
|
+
"body": "{The one thing a reader should remember \u2014 with the **part that matters most in bold**.}",
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
]
|
|
94
|
+
---
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "PortfolioItem"
|
|
3
|
+
slug: "sample-two"
|
|
4
|
+
title: "{Example two}: before and after"
|
|
5
|
+
description: "{One line on what changed and why it mattered}"
|
|
6
|
+
publishedAt: "2026-01-01"
|
|
7
|
+
sections:
|
|
8
|
+
[
|
|
9
|
+
{
|
|
10
|
+
"id": "compare",
|
|
11
|
+
"type": "before-after",
|
|
12
|
+
"data":
|
|
13
|
+
{
|
|
14
|
+
"header":
|
|
15
|
+
{
|
|
16
|
+
"headline": "{Example two}: before and after",
|
|
17
|
+
"tagline": "{One line on what changed and why it mattered}",
|
|
18
|
+
},
|
|
19
|
+
"pager":
|
|
20
|
+
{
|
|
21
|
+
"prev":
|
|
22
|
+
{ "label": "{Example one}", "href": "/portfolio/sample-one" },
|
|
23
|
+
"next":
|
|
24
|
+
{
|
|
25
|
+
"label": "{Example three}",
|
|
26
|
+
"href": "/portfolio/sample-three",
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
"before": { "label": "Before", "icon": "x-circle" },
|
|
30
|
+
"after": { "label": "After", "icon": "check-circle" },
|
|
31
|
+
"catalyst":
|
|
32
|
+
{
|
|
33
|
+
"title": "{What changed it}",
|
|
34
|
+
"subtitle": "{The method, in a few words}",
|
|
35
|
+
"steps":
|
|
36
|
+
[
|
|
37
|
+
{ "label": "{Step one}", "marker": "1" },
|
|
38
|
+
{ "label": "{Step two}", "marker": "2" },
|
|
39
|
+
{ "label": "{Step three}", "marker": "3" },
|
|
40
|
+
],
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
]
|
|
45
|
+
---
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "PortfolioList"
|
|
3
|
+
slug: "portfolio"
|
|
4
|
+
title: "{Before and after, compared} | {Company name}"
|
|
5
|
+
description: "{Every project shown as a comparison \u2014 what the client had, what they have now, and what changed in between.}"
|
|
6
|
+
sections:
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
"id": "cases-hero",
|
|
10
|
+
"type": "hero",
|
|
11
|
+
"data":
|
|
12
|
+
{
|
|
13
|
+
"variant": "default",
|
|
14
|
+
"size": "display",
|
|
15
|
+
"surface": "wash-secondary",
|
|
16
|
+
"gapBelow": "tight",
|
|
17
|
+
"eyebrow": "{Portfolio}",
|
|
18
|
+
"eyebrowTone": "brand",
|
|
19
|
+
"headline": "{The work, before and after.}",
|
|
20
|
+
"subheadline": "{Two or three sentences on why the comparison is the honest proof \u2014 what the before cost the client, what the after changed, and how a reader can check it.}",
|
|
21
|
+
"subtitleSize": "lead",
|
|
22
|
+
"ctaSize": "xl",
|
|
23
|
+
"primaryCta": { "label": "{Get started}", "href": "/pricing" },
|
|
24
|
+
"secondaryCta": { "label": "{Book a call}", "href": "/contact" },
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"id": "cases-tiles",
|
|
29
|
+
"type": "items",
|
|
30
|
+
"data":
|
|
31
|
+
{
|
|
32
|
+
"variant": "tile",
|
|
33
|
+
"tileHover": "outline",
|
|
34
|
+
"columns": 2,
|
|
35
|
+
"surface": "none",
|
|
36
|
+
"items":
|
|
37
|
+
[
|
|
38
|
+
{
|
|
39
|
+
"title": "{Example one}: before and after",
|
|
40
|
+
"description": "{One sentence on what example one had, and what they have now}",
|
|
41
|
+
"rows":
|
|
42
|
+
[
|
|
43
|
+
{
|
|
44
|
+
"label": "THE CLIENT",
|
|
45
|
+
"body": "{Who they are and the market they sell into}",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"label": "WHAT CHANGED",
|
|
49
|
+
"body": "{The one thing the after does that the before could not}",
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
"link":
|
|
53
|
+
{
|
|
54
|
+
"label": "See the comparison \u2192",
|
|
55
|
+
"href": "/portfolio/sample-one",
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"title": "{Example two}: before and after",
|
|
60
|
+
"description": "{One sentence on what example two had, and what they have now}",
|
|
61
|
+
"rows":
|
|
62
|
+
[
|
|
63
|
+
{
|
|
64
|
+
"label": "THE CLIENT",
|
|
65
|
+
"body": "{Who they are and the market they sell into}",
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"label": "WHAT CHANGED",
|
|
69
|
+
"body": "{The one thing the after does that the before could not}",
|
|
70
|
+
},
|
|
71
|
+
],
|
|
72
|
+
"link":
|
|
73
|
+
{
|
|
74
|
+
"label": "See the comparison \u2192",
|
|
75
|
+
"href": "/portfolio/sample-two",
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"title": "{Example three}: before and after",
|
|
80
|
+
"description": "{One sentence on what example three had, and what they have now}",
|
|
81
|
+
"rows":
|
|
82
|
+
[
|
|
83
|
+
{
|
|
84
|
+
"label": "THE CLIENT",
|
|
85
|
+
"body": "{Who they are and the market they sell into}",
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"label": "WHAT CHANGED",
|
|
89
|
+
"body": "{The one thing the after does that the before could not}",
|
|
90
|
+
},
|
|
91
|
+
],
|
|
92
|
+
"link":
|
|
93
|
+
{
|
|
94
|
+
"label": "See the comparison \u2192",
|
|
95
|
+
"href": "/portfolio/sample-three",
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"title": "{Example four}: before and after",
|
|
100
|
+
"description": "{One sentence on what example four had, and what they have now}",
|
|
101
|
+
"rows":
|
|
102
|
+
[
|
|
103
|
+
{
|
|
104
|
+
"label": "THE CLIENT",
|
|
105
|
+
"body": "{Who they are and the market they sell into}",
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"label": "WHAT CHANGED",
|
|
109
|
+
"body": "{The one thing the after does that the before could not}",
|
|
110
|
+
},
|
|
111
|
+
],
|
|
112
|
+
"link":
|
|
113
|
+
{
|
|
114
|
+
"label": "See the comparison \u2192",
|
|
115
|
+
"href": "/portfolio/sample-four",
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"id": "cases-close",
|
|
123
|
+
"type": "cta",
|
|
124
|
+
"data":
|
|
125
|
+
{
|
|
126
|
+
"variant": "beam",
|
|
127
|
+
"headline": "{Is your site the before or the after?}",
|
|
128
|
+
"description": "{One line offering the reader the same comparison for their own site.}",
|
|
129
|
+
"primaryCta": { "label": "{Get started}", "href": "/pricing" },
|
|
130
|
+
"secondaryCta": { "label": "{Book a call}", "href": "/contact" },
|
|
131
|
+
"chips":
|
|
132
|
+
[
|
|
133
|
+
"{Proof you can check}",
|
|
134
|
+
"{Every project shown both ways}",
|
|
135
|
+
"{Re-checked every quarter}",
|
|
136
|
+
],
|
|
137
|
+
},
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"id": "cases-faq",
|
|
141
|
+
"type": "faq",
|
|
142
|
+
"data":
|
|
143
|
+
{
|
|
144
|
+
"headline": "Frequently Asked Questions",
|
|
145
|
+
"variant": "centered",
|
|
146
|
+
"presentation": "accordion",
|
|
147
|
+
"questionSize": "body-lg",
|
|
148
|
+
"initialOpen": "first",
|
|
149
|
+
"containerWidth": "default",
|
|
150
|
+
"surface": "gray-100",
|
|
151
|
+
"items":
|
|
152
|
+
[
|
|
153
|
+
{
|
|
154
|
+
"question": "{How do you pick which projects to show?}",
|
|
155
|
+
"answer": "{Two or three sentences.}",
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"question": "{Are the before screenshots real?}",
|
|
159
|
+
"answer": "{Two or three sentences.}",
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"question": "{Can I see the numbers behind a comparison?}",
|
|
163
|
+
"answer": "{Two or three sentences.}",
|
|
164
|
+
},
|
|
165
|
+
],
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
]
|
|
169
|
+
---
|
|
@@ -1,27 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "Pricing"
|
|
3
3
|
slug: "pricing"
|
|
4
|
-
title: "Pays for itself in
|
|
5
|
-
description: "
|
|
4
|
+
title: "{Pays for itself in tangible value or outcome}"
|
|
5
|
+
description: "{Any important detail everyone should know about how your pricing works}"
|
|
6
6
|
sections:
|
|
7
7
|
[
|
|
8
|
-
{
|
|
9
|
-
"id": "hero",
|
|
10
|
-
"type": "hero",
|
|
11
|
-
"data":
|
|
12
|
-
{
|
|
13
|
-
"eyebrow": "Pricing",
|
|
14
|
-
"headline": "Pays for itself in {tangible value or outcome}",
|
|
15
|
-
"subheadline": "This is a great place to communicate any important details you want everyone to know about how your pricing works.",
|
|
16
|
-
"primaryCta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
17
|
-
"secondaryCta":
|
|
18
|
-
{
|
|
19
|
-
"label": "{Secondary CTA}",
|
|
20
|
-
"href": "/how-it-works",
|
|
21
|
-
"variant": "outline",
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
8
|
{
|
|
26
9
|
"id": "plans",
|
|
27
10
|
"type": "pricing",
|
|
@@ -29,44 +12,46 @@ sections:
|
|
|
29
12
|
{
|
|
30
13
|
"variant": "three-tiers-with-toggle",
|
|
31
14
|
"eyebrow": "Pricing",
|
|
32
|
-
"headline": "Pays for itself in
|
|
33
|
-
"description": "
|
|
15
|
+
"headline": "{Pays for itself in tangible value or outcome}",
|
|
16
|
+
"description": "{Any important detail everyone should know about how your pricing works}",
|
|
34
17
|
"billingToggle": true,
|
|
18
|
+
"toggleStyle": "solid",
|
|
19
|
+
"cardLayout": "centered",
|
|
35
20
|
"plans":
|
|
36
21
|
[
|
|
37
22
|
{
|
|
38
23
|
"name": "Basic plan",
|
|
39
|
-
"price": { "monthly": "
|
|
24
|
+
"price": { "monthly": "{price}/mo", "annual": "{price}/yr" },
|
|
40
25
|
"features":
|
|
41
26
|
[
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
27
|
+
"{A feature this plan includes}",
|
|
28
|
+
"{A feature this plan includes}",
|
|
29
|
+
"{A feature this plan includes}",
|
|
45
30
|
],
|
|
46
31
|
"cta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
47
32
|
},
|
|
48
33
|
{
|
|
49
34
|
"name": "Business plan",
|
|
50
|
-
"price": { "monthly": "
|
|
35
|
+
"price": { "monthly": "{price}/mo", "annual": "{price}/yr" },
|
|
51
36
|
"features":
|
|
52
37
|
[
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
38
|
+
"{A feature this plan adds}",
|
|
39
|
+
"{A feature this plan includes}",
|
|
40
|
+
"{A feature this plan includes}",
|
|
41
|
+
"{A feature this plan includes}",
|
|
57
42
|
],
|
|
58
43
|
"cta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
59
44
|
},
|
|
60
45
|
{
|
|
61
46
|
"name": "Enterprise plan",
|
|
62
|
-
"price": { "monthly": "
|
|
47
|
+
"price": { "monthly": "{price}/mo", "annual": "{price}/yr" },
|
|
63
48
|
"features":
|
|
64
49
|
[
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
50
|
+
"{A feature this plan adds}",
|
|
51
|
+
"{A feature this plan includes}",
|
|
52
|
+
"{A feature this plan includes}",
|
|
53
|
+
"{A feature this plan includes}",
|
|
54
|
+
"{A feature this plan includes}",
|
|
70
55
|
],
|
|
71
56
|
"cta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
72
57
|
},
|
|
@@ -79,14 +64,30 @@ sections:
|
|
|
79
64
|
"data":
|
|
80
65
|
{
|
|
81
66
|
"headline": "Don’t just take our word for it",
|
|
67
|
+
"headlineStyle": "label",
|
|
82
68
|
"logos":
|
|
83
69
|
[
|
|
84
|
-
{
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
70
|
+
{
|
|
71
|
+
"name": "SalesSmyth",
|
|
72
|
+
"src": "/logos/salessmyth.svg",
|
|
73
|
+
"darkSrc": "/logos/salessmyth-light.svg",
|
|
74
|
+
"width": 1118,
|
|
75
|
+
"height": 147,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"name": "AI Launch Kit",
|
|
79
|
+
"src": "/logos/ai-launch-kit.svg",
|
|
80
|
+
"darkSrc": "/logos/ai-launch-kit-light.svg",
|
|
81
|
+
"width": 1248,
|
|
82
|
+
"height": 144,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "Atomic Agent",
|
|
86
|
+
"src": "/logos/atomic-agent.svg",
|
|
87
|
+
"darkSrc": "/logos/atomic-agent-light.svg",
|
|
88
|
+
"width": 1320,
|
|
89
|
+
"height": 148,
|
|
90
|
+
},
|
|
90
91
|
],
|
|
91
92
|
"layout": "inline",
|
|
92
93
|
"treatment": "monochrome",
|
|
@@ -97,13 +98,13 @@ sections:
|
|
|
97
98
|
"type": "testimonials",
|
|
98
99
|
"data":
|
|
99
100
|
{
|
|
100
|
-
"variant": "
|
|
101
|
+
"variant": "quote",
|
|
101
102
|
"items":
|
|
102
103
|
[
|
|
103
104
|
{
|
|
104
|
-
"quote": "
|
|
105
|
-
"author": "
|
|
106
|
-
"role": "
|
|
105
|
+
"quote": "{A customer quote, in their own words, about the result they got}",
|
|
106
|
+
"author": "{Customer name}",
|
|
107
|
+
"role": "{Their title, their company}",
|
|
107
108
|
},
|
|
108
109
|
],
|
|
109
110
|
},
|
|
@@ -114,9 +115,9 @@ sections:
|
|
|
114
115
|
"data":
|
|
115
116
|
{
|
|
116
117
|
"variant": "box",
|
|
117
|
-
"headline": "Switch to
|
|
118
|
-
"description": "You shouldn't have to
|
|
119
|
-
"
|
|
118
|
+
"headline": "{Switch to your product in time amount or less}",
|
|
119
|
+
"description": "{You shouldn't have to experience a painful problem. With your product, you can finally achieve a value outcome or get a big improvement.}",
|
|
120
|
+
"checklist":
|
|
120
121
|
["No credit card required", "Cancel any time", "Live chat support"],
|
|
121
122
|
"primaryCta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
122
123
|
"secondaryCta":
|
|
@@ -134,31 +135,39 @@ sections:
|
|
|
134
135
|
"data":
|
|
135
136
|
{
|
|
136
137
|
"headline": "FAQs",
|
|
137
|
-
"description": "
|
|
138
|
-
"
|
|
138
|
+
"description": "{One sentence that invites visitors to ask what this list does not answer}",
|
|
139
|
+
"actions":
|
|
140
|
+
[
|
|
141
|
+
{
|
|
142
|
+
"kind": "button",
|
|
143
|
+
"label": "Contact",
|
|
144
|
+
"href": "/contact",
|
|
145
|
+
"variant": "outline",
|
|
146
|
+
},
|
|
147
|
+
],
|
|
139
148
|
"presentation": "accordion",
|
|
140
|
-
"initialOpen": "
|
|
149
|
+
"initialOpen": "none",
|
|
141
150
|
"items":
|
|
142
151
|
[
|
|
143
152
|
{
|
|
144
|
-
"question": "
|
|
145
|
-
"answer": "
|
|
153
|
+
"question": "{A question your customers actually ask}",
|
|
154
|
+
"answer": "{Answer the question in two or three plain sentences}",
|
|
146
155
|
},
|
|
147
156
|
{
|
|
148
|
-
"question": "
|
|
149
|
-
"answer": "
|
|
157
|
+
"question": "{A question your customers actually ask}",
|
|
158
|
+
"answer": "{Answer the question in two or three plain sentences}",
|
|
150
159
|
},
|
|
151
160
|
{
|
|
152
|
-
"question": "
|
|
153
|
-
"answer": "
|
|
161
|
+
"question": "{A question your customers actually ask}",
|
|
162
|
+
"answer": "{Answer the question in two or three plain sentences}",
|
|
154
163
|
},
|
|
155
164
|
{
|
|
156
|
-
"question": "
|
|
157
|
-
"answer": "
|
|
165
|
+
"question": "{A question your customers actually ask}",
|
|
166
|
+
"answer": "{Answer the question in two or three plain sentences}",
|
|
158
167
|
},
|
|
159
168
|
{
|
|
160
|
-
"question": "
|
|
161
|
-
"answer": "
|
|
169
|
+
"question": "{A question your customers actually ask}",
|
|
170
|
+
"answer": "{Answer the question in two or three plain sentences}",
|
|
162
171
|
},
|
|
163
172
|
],
|
|
164
173
|
},
|
|
@@ -10,10 +10,9 @@ sections:
|
|
|
10
10
|
"type": "document-chassis",
|
|
11
11
|
"data":
|
|
12
12
|
{
|
|
13
|
-
"eyebrow": "PLACEHOLDER — REPLACE BEFORE LAUNCH",
|
|
14
13
|
"headline": "Privacy Policy",
|
|
15
|
-
"
|
|
16
|
-
"
|
|
14
|
+
"layout": "article",
|
|
15
|
+
"updated": "Last updated {Month Day, Year}",
|
|
17
16
|
"navGroupLabel": "Contents",
|
|
18
17
|
"sections":
|
|
19
18
|
[
|
|
@@ -55,6 +54,21 @@ sections:
|
|
|
55
54
|
},
|
|
56
55
|
],
|
|
57
56
|
},
|
|
57
|
+
{
|
|
58
|
+
"id": "cookie-settings",
|
|
59
|
+
"heading": "Cookie settings",
|
|
60
|
+
"blocks":
|
|
61
|
+
[
|
|
62
|
+
{
|
|
63
|
+
"kind": "paragraph",
|
|
64
|
+
"text": "Arriving at this section reopens the cookie banner, so a visitor can accept or reject again at any time. Their earlier choice stays in place until they pick again.",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"kind": "paragraph",
|
|
68
|
+
"text": "Replace this with what your site actually sets: which cookies, what each one is for, and what stops working if someone rejects them.",
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
},
|
|
58
72
|
{
|
|
59
73
|
"id": "contact",
|
|
60
74
|
"heading": "How to reach us",
|
|
@@ -10,10 +10,9 @@ sections:
|
|
|
10
10
|
"type": "document-chassis",
|
|
11
11
|
"data":
|
|
12
12
|
{
|
|
13
|
-
"eyebrow": "PLACEHOLDER — REPLACE BEFORE LAUNCH",
|
|
14
13
|
"headline": "Terms of Service",
|
|
15
|
-
"
|
|
16
|
-
"
|
|
14
|
+
"layout": "article",
|
|
15
|
+
"updated": "Last updated {Month Day, Year}",
|
|
17
16
|
"navGroupLabel": "Contents",
|
|
18
17
|
"sections":
|
|
19
18
|
[
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "UseCase"
|
|
3
|
+
slug: "persona-1"
|
|
4
|
+
title: "{Use case 1: the job this customer hires your product to do}"
|
|
5
|
+
description: "{Two sentences on who this customer is and the result they get}"
|
|
6
|
+
sections:
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
"id": "hero",
|
|
10
|
+
"type": "hero",
|
|
11
|
+
"data":
|
|
12
|
+
{
|
|
13
|
+
"eyebrow": "Use cases",
|
|
14
|
+
"headline": "{Use case 1: the job this customer hires your product to do}",
|
|
15
|
+
"subheadline": "{Two sentences on who this customer is and the result they get}",
|
|
16
|
+
"primaryCta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
17
|
+
"secondaryCta":
|
|
18
|
+
{
|
|
19
|
+
"label": "{Secondary CTA}",
|
|
20
|
+
"href": "/pricing",
|
|
21
|
+
"variant": "outline",
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"id": "detail",
|
|
27
|
+
"type": "feature",
|
|
28
|
+
"data":
|
|
29
|
+
{
|
|
30
|
+
"headline": "{How this customer uses your product}",
|
|
31
|
+
"description": "{Two or three sentences on how it works and what changes for the reader}",
|
|
32
|
+
"features":
|
|
33
|
+
[
|
|
34
|
+
{
|
|
35
|
+
"title": "{First point}",
|
|
36
|
+
"description": "{One sentence that makes the point concrete}",
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"title": "{Second point}",
|
|
40
|
+
"description": "{One sentence that makes the point concrete}",
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"title": "{Third point}",
|
|
44
|
+
"description": "{One sentence that makes the point concrete}",
|
|
45
|
+
},
|
|
46
|
+
],
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"id": "cta",
|
|
51
|
+
"type": "cta",
|
|
52
|
+
"data":
|
|
53
|
+
{
|
|
54
|
+
"variant": "box",
|
|
55
|
+
"headline": "{Talk to us about your own use case}",
|
|
56
|
+
"description": "{One sentence on what happens when they get in touch}",
|
|
57
|
+
"primaryCta": { "label": "{Primary CTA}", "href": "/contact" },
|
|
58
|
+
"secondaryCta":
|
|
59
|
+
{
|
|
60
|
+
"label": "{Secondary CTA}",
|
|
61
|
+
"href": "/pricing",
|
|
62
|
+
"variant": "outline",
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
]
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
{/* Rendered from frontmatter `sections[]`. Placeholder copy — replace every {brace} with your own words before you launch. */}
|