Pay for what your users actually use
Credit-based, transparent, and identical in mock and real mode. Demo the whole flow offline, then flip on Stripe to charge cards.
Starter
Kick the tires. Everything runs locally, no card needed.
50 credits / month
- Streaming AI chat (mock or real)
- Credit ledger & usage meter
- Dev-mode cookie auth
- Local SQLite, zero config
Pro
For the product you're actually shipping to real users.
5,000 credits / month
- Everything in Starter
- Real Stripe checkout & portal
- OpenAI / Anthropic streaming
- Resend transactional email
- Priority support
Scale
Usage-based billing for a product with traction.
25,000 credits / month
- Everything in Pro
- Metered overage billing
- Upstash rate limiting
- Custom credit packs
- SSO-ready auth swap
Prices shown are template defaults — edit them in lib/config.ts. Billing is mocked until you set STRIPE_SECRET_KEY.
Out of credits? Buy a pack
Top up the ledger any time. Mocked offline; real Stripe Checkout when configured.
Top-up
$5
200 credits
Builder
$20
1,000 credits
Scale
$80
5,000 credits
Frequently asked
Does it really run with no API keys?
Yes. With zero environment variables, auth is a demo cookie, the database is a local SQLite file, billing tops up a local credit ledger, and the AI streams a deterministic mock response. The whole purchase → credits → streaming-chat loop is demoable offline.
How do I switch to a real LLM?
Set OPENAI_API_KEY or ANTHROPIC_API_KEY. The mock branch in lib/ai.ts is replaced by a real streaming call — the chat UI and credit metering code never change.
How does the credit billing work?
Every generation decrements one credit from a ledger stored in the database, records the usage, and blocks at zero with a clean limit-reached state. Credit packs top the ledger back up — mocked offline, real Stripe Checkout when STRIPE_SECRET_KEY is set.
Is it light-themed, or is there a dark mode?
Plinth is intentionally light, premium, and violet. It's not another dark dashboard template. Recolor the entire kit by editing a single CSS variable, --color-brand, in app/globals.css.
What stack is it built on?
Next.js 15 App Router, TypeScript, Tailwind v4, and libSQL (local file or Turso). No heavyweight ORM, no forced multi-tenancy — small and clear on purpose.
Can I use it in a commercial product?
Yes. It ships under a permissive license for building unlimited end products. You can't resell the kit itself as a competing starter kit. See LICENSE.md for the full terms.
Still curious? hello@yourdomain.com
Ship the boring 80%. Start building the part that's yours.
Clone Plinth and have a streaming AI SaaS with real credit billing running in minutes — no cloud keys required.