
Warm cream and chocolate-brown tones, tall hand-drawn display type, scalloped edges, "freshly baked" badges that turn slowly — and a working shop that carries an order from any item on the menu through checkout to a confirmation. Deux is a complete bakery and food-shop theme built on Astro 7. Every page pre-renders to static HTML, so it loads instantly and deploys anywhere — and it ships zero framework JavaScript, just one small vanilla script. Live demo: https://deux-astro.netlify.app
What's Inside
17 page templates — 39 static pages per build: home, about, menu, product, category, blog, blog article, contact, checkout, PayPal checkout, order confirmation, style guide, licenses, instructions, changelog, 401 password protected and 404
Fifteen menu items as JSON — a name, a summary, a price, a picture, a weight, a texture, a "best enjoyed" note, the ingredients, a category and the three items its page suggests; each has a page of its own with an add-to-cart form, and a card on the menu, its category page, the home page and under every item that suggests it
Three categories as JSON — Breads, Pastries and Sweets, each with its own page and a tab on the menu and the home page
Seven blog articles as Markdown — a category, two dates, an author and role, a card picture, a banner and two gallery pictures, and a body in three parts set around the gallery; the blog page features the newest and lists the rest
Commerce pages — two cart drawers with quantity and remove, add to cart on every item, a checkout whose total follows the store-pickup or local-delivery choice, field-by-field validation on Place Order, a PayPal review page and an order confirmation that prints the order just placed (localStorage-based; wire up Stripe or Lemon Squeezy when you're ready to sell)
Motion that earns its keep — hero titles that rise in masked lines, 211 scroll reveals and 16 staggered groups, a load sequence on every page, a menu tab set with Webflow's fade, a "Why Deux" tab set that opens its own text, an FAQ accordion, a crossfading testimonials slider and an autoplaying about slider with Webflow's own algorithm transcribed, a sliding mobile menu, turning SHOP stars, rolling button hovers and a smoothed wheel scroll — all in one 21 KB vanilla script, all respecting prefers-reduced-motion
Edit content, not code — re-price a croissant in one JSON entry and it is re-priced on the menu, its category page, the home page and in the basket at once; every article is one Markdown file with zod-validated frontmatter
Design-token system — 209 custom properties hold the whole palette, type scale and spacing steps, and /style-guide previews them on one page
Self-hosted fonts — Mouse Memoirs, Geist and Erica One as woff2, no CDN requests
TypeScript throughout, zod-validated content schema
Tech Stack
Astro 7 · Markdown content collections and JSON data · TypeScript · the template's own CSS — no utility framework, no build-time CSS pipeline
Requirements
Node 22.12 or newer. npm ships with it. Nothing else to install.
Support
contact@kaziehsan.com
Waida Studio