A production-ready SvelteKit e-commerce template with Stripe Checkout integration. Features a product catalog, shopping cart with persistent state, category filtering, and complete Stripe payment flow including webhooks.
# Clone
git clone https://github.com/kszongic/svelte-ecommerce-starter.git
cd svelte-ecommerce-starter
# Install
npm install
# Configure
cp .env.example .env
# Add your Stripe keys to .env
# Dev
npm run dev
| Variable | Description |
|---|---|
STRIPE_SECRET_KEY |
Stripe secret key |
STRIPE_WEBHOOK_SECRET |
Stripe webhook signing secret |
PUBLIC_STRIPE_PUBLISHABLE_KEY |
Stripe publishable key |
PUBLIC_SITE_URL |
Your site URL (for redirects) |
src/
āāā lib/
ā āāā components/ # Navbar, ProductCard, Footer
ā āāā data/ # Product data & helpers
ā āāā stores/ # Cart store (Svelte stores)
ā āāā stripe.ts # Stripe server client
āāā routes/
ā āāā +layout.svelte
ā āāā +page.svelte # Home (featured products)
ā āāā products/
ā ā āāā +page.svelte # All products + filters
ā ā āāā [slug]/+page.svelte # Product detail
ā āāā cart/+page.svelte # Cart + checkout trigger
ā āāā checkout/+page.svelte # Success/cancel page
ā āāā api/
ā āāā checkout/+server.ts # Create Stripe session
ā āāā webhook/+server.ts # Handle Stripe webhooks
āāā app.css # Global styles
stripe listen --forward-to localhost:5173/api/webhook
src/lib/data/products.tssrc/app.cssWorks with any SvelteKit adapter ā Vercel, Netlify, Cloudflare Pages, Node, etc.
npm run build
npm run preview
MIT