Ship an AI tool site in 30 minutes.
One backend, many sites. Multi-tenant by default. Configure it, don't code it.
Built for velocity
Every piece of the stack is tuned for speed from day one.
Cloudflare-native
Workers + D1 + R2 + KV. No servers to manage, global by default.
Multi-tenant out of the box
Row-level app_key isolation across every service. One backend serves N sites.
Config-driven
Brand, SEO, pay channels, AI providers β all edited from the admin UI.
Stripe + credits baked in
One-time and subscription checkout, credit ledger, webhook idempotency.
Drop-in AI providers
Model registry + pre-deduct-then-refund credits pattern, works with any async provider.
Blog & pSEO
Every language gets its own URL with real hreflang + JSON-LD β programmatic SEO ready.
Questions, answered
How does multi-tenancy work? βΎ
Every user-data table carries an app_key column and every query filters by it. One backend deployment serves all your sites; each site is a row in t_project plus its own frontend Worker bundle.
Which payment providers are supported? βΎ
Stripe is the default. Adding a new provider means implementing a small PaymentProvider adapter β the pay channel table already stores encrypted per-tenant credentials.
Can I use my own AI provider? βΎ
Yes. Register a new provider row + model rows in the admin UI; the async task lifecycle (pre-deduct credits β create task β webhook / cron sweep β refund on failure) works with any provider that has a task-create + callback shape.
How is the blog indexed by search engines? βΎ
Each locale gets its own URL (/blog/slug and /zh/blog/slug), each with real content β no rewrite fallbacks. Pages emit hreflang links, Article JSON-LD, and show up in /sitemap.xml with proper alternates.
Ready to ship?
Clone the template, tweak your brand, and deploy your first AI tool site today.
Get started free