E-commerce starters · Rank #2
ecommerce-template
Grade B: derived only from the two verdicts below. How grades work
An ecommerce template built with NextJS 16, TypeScript and TailwindCSS
Why this verdict
How we check →- 129 commits by 3 contributors in the last 90 days (55 in the last 30). receipt ↗
- Tailwind CSS 3 declared; latest is 4 (1 major behind). receipt ↗
- On current major: Better Auth, Drizzle, Next.js, React, Supabase JS, Vercel AI SDK, Zod. receipt ↗
- Not counted in verdict: TypeScript 5 → 7, Stripe SDK 22 → 23. receipt ↗
Snapshot: commit a99e3c0 on master, checked 2026-10-19 06:33 UTC. Receipts link to files at this exact commit.
Dependency freshness
| Package | Declared | Latest | Status |
|---|---|---|---|
| TypeScript typescript | 5.9.3 | 7.0.2 | Behind, not counted |
| Stripe SDK stripe | 22.5.0 | 23.0.0 | Behind, not counted |
| Tailwind CSS tailwindcss | 3.4.18 | 4.3.3 | 1 major behind |
| Better Auth better-auth | 1.6.28 | 1.7.11 | Current |
| Drizzle drizzle-orm | 0.45.2 | 0.45.4 | Current |
| Next.js next | 16.3.8 | 16.4.2 | Current |
| React react | 19.2.0 | 19.3.1 | Current |
| Supabase JS @supabase/supabase-js | 2.50.0 | 2.118.0 | Current |
| Vercel AI SDK ai | 7.0.128 | 7.0.143 | Current |
| Zod zod | 4.1.12 | 4.6.7 | Current |
Declared = lowest version the kit's dependency file (package.json, pyproject.toml or requirements.txt) allows. Latest = the npm "latest" tag or the newest PyPI release. TypeScript, the Stripe SDK, FastAPI and other 0.x packages are shown but not counted in the verdict.
What's in the stack
- Framework
- Next.js
- Auth
- Better Auth
- Payments
- Stripe
- Database / ORM
- Drizzle, Supabase, Postgres.js, node-postgres
- Nodemailer
- API layer
- TanStack Query
- Monitoring
- Vercel Analytics
Detected from declared dependencies. A listed package means it's installed, not necessarily fully wired up.
What the README says you get
- AdminAdmin product management
Admin product create/edit with Stripe catalog sync and replay for failed work
- AdminAdmin bootstrap script
Grant `admin` to `ADMIN_USER_ID`
- AuthEmail/password auth
Better Auth (email/password; Google is opt-in)
- BillingStripe Checkout
Stripe Checkout from a server-built cart snapshot, not a client-supplied price
- DataDrizzle ORM on Postgres
Drizzle ORM on Supabase PostgreSQL (`app_private`)
- DataSchema and privilege verifier
Schema and privilege verifier
- DeployBackground crons
Background fulfillment and catalog-sync crons (Vercel, every 5 minutes)
- EmailOrder confirmation emails
Optional order-confirmation and merchant-notification email
- EmailSMTP mail transport
Nodemailer over explicit SMTP (optional)
- OtherCart and wishlist
Cart and wishlist (session required; data is scoped to the signed-in Principal)
- OtherOrder history
Order history and a result page that only loads a session the buyer owns
- OtherSupabase Storage media
Supabase Storage (`product-images`: JPEG, PNG, WebP)
- TestingEnd-to-end browser tests
End-to-end tests in a browser; see End-to-end tests
- UICatalog with categories
Catalog with categories, variants, search, and help pages
Extracted from the kit's README by a local AI model (deepseek-flash) on Oct 12, 2026. Every item is checked against an exact README quote. A README claim is the maker's description, not something we tested.
Watch ecommerce-template
Get told if it goes dormant, gets archived, falls further behind on a core dependency, or changes its license or price.
History
Sep 29, 2026 → Oct 19, 2026. One square per check, colored by maintenance status. Hover for details.
Show as a table
| Date | Maintenance | Dependencies | Commits (90d) |
|---|---|---|---|
| Oct 19, 2026 | Active | 1 major behind | 129 |
| Oct 12, 2026 | Active | 1 major behind | 132 |
| Sep 29, 2026 | Active | 1 major behind | 77 |
Sources
Every claim on this page comes from these public records, checked . Open them to verify.
- Commit history ↗ default branch (master) at the checked commit: pulse, contributors, last commit
- Releases ↗ latest release
- package.json ↗ declared dependency versions and stack (at commit a99e3c0)
- README ↗ quoted features at the checked commit
- npm registry ↗ latest versions (each linked in the table above)