
Template details
Maison
Free classic Astro theme styled as a printed archive: three houses, patron cabinet, live currency switch, Shopify-ready commerce layer.
About this template
Maison is a free classic e-commerce theme for Astro 5 that presents a storefront as a printed archive rather than a conventional webshop. Built with Tailwind CSS v4 and nanostores, it renders static output and deploys to Cloudflare Pages, Netlify, Vercel, or GitHub Pages; the author publishes it as the free theme of the classic line at njxui.dev.
What is Maison?
Maison is an Astro 5 storefront theme that outputs a fully static, SEO-ready site from the bundled mock catalogue, with an optional provider-based commerce layer that switches to the Shopify Storefront API. The theme ships a 36-piece catalogue, three fictional archive houses, a faceted filter rail, a patron account area, and a currency switcher, and is authored by njxui.dev under the MIT license.
What makes Maison stand out?
- Printed editorial design — Playfair Display headlines, Karla body text, Cousine small-caps labels, one bordeaux accent, and hairline rules instead of glow or neon effects.
- Three archive houses in one theme — a Geneva watchmaking maison (est. 1888), a Savile Row bespoke atelier (est. 1904), and a Paris antiquarian cabinet (est. 1792), each with its own manifesto, mega menu, search suggestions, and catalogue.
- Faceted archive rail — filters for valuation range, house, material, era, and availability, with live counts shown as printed chips.
- One-of-one commerce flow — a private vault, an acquisition bag with a total valuation, and a "Request the keeper" flow instead of a checkout.
- Patron cabinet — a stats strip, orders with a four-step craft progress (Preparation, Hand-crafting, Inspection, Dispatched), an activity log, residences, and privileges.
- Live currency switch — USD, EUR, and GBP, repricing every price on the site instantly.
- Full-screen serif search on the keyboard shortcuts
⌘Kand/across all three houses. - SEO-ready output — static piece records with Product and AggregateRating JSON-LD, Open Graph tags, and sitemap-friendly pages.
Who should use Maison?
- Developers demoing a luxury storefront: clone the repo, run
npm installandnpm run dev, and the theme runs on the bundled mock catalogue with no keys or accounts. - Brands selling unique pieces: anyone with one-of-one inventory (vintage, antiques, made-to-order goods) can use the acquisition-bag and keeper-request flow instead of a checkout.
- Multi-brand or multi-collection sites: the three-house structure suits a business that wants distinct sub-brands sharing one design system and mega menu.
- Shopify store owners on Astro: set
COMMERCE_PROVIDER=shopifyplus the store domain and storefront token, rebuild, and the archive renders live products.
Use cases
- Antique and vintage dealers: filter inventory by era, material, and valuation range, then convert interest into a request rather than a cart purchase.
- Custom ateliers: present house manifestos and 36-piece catalogues per line while letting clients track commissions through the four-step craft progress view.
- Theme developers: rebrand by editing
scripts/gen-catalog.pyfor houses and catalogue andsrc/styles/global.cssfor paper, ink, and accent tokens.
How does Maison work?
Maison runs on bundled mock data out of the box; to connect real products, set the COMMERCE_PROVIDER, SHOPIFY_STORE_DOMAIN, and SHOPIFY_STOREFRONT_TOKEN environment variables, then rebuild. The provider-based commerce layer swaps the data source without changing the templates.
Pricing
Free and open source under the MIT license, usable for personal and commercial projects; a link back to njxui.dev is appreciated but not required.















