Ecommerce storefront
A product catalog with category filters and search, product detail view, and a cart kept in local state.
Catalog, product detail and cart screens driven by a typed in-memory product list. The cart is persisted to localStorage through a small hook, quantities can be adjusted inline, and the checkout form is explicitly a placeholder: it records the order locally and tells you where to plug in Stripe or Razorpay on the server.
- react
- ecommerce
- cart
- catalog
- tailwind
This preview is the template's actual file tree and source code — exactly what is copied into a new project. Codexa does not publish screenshots or mock-ups of templates; run the project to see it rendered.
Files13 files
export type Product = { id: string; name: string; price: number; category: "Audio" | "Home" | "Outdoor"; description: string };
/** Replace with a fetch from your catalog API. Prices are in whole currency units. */
export const products: Product[] = [
{ id: "p1", name: "Studio headphones", price: 129, category: "Audio", description: "Closed-back headphones with a flat response for mixing." },
{ id: "p2", name: "Desk speaker", price: 89, category: "Audio", description: "Compact powered speaker with USB-C input." },
{ id: "p3", name: "Ceramic mug", price: 18, category: "Home", description: "Hand-glazed stoneware mug, 350 ml." },
{ id: "p4", name: "Linen throw", price: 64, category: "Home", description: "Stonewashed linen throw blanket." },
{ id: "p5", name: "Trail bottle", price: 24, category: "Outdoor", description: "Insulated steel bottle, 750 ml." },
{ id: "p6", name: "Packable jacket", price: 110, category: "Outdoor", description: "Lightweight windproof shell that packs into its pocket." },
];
export const categories = ["All", "Audio", "Home", "Outdoor"] as const;
export function formatPrice(n: number) {
return new Intl.NumberFormat(undefined, { style: "currency", currency: "USD" }).format(n);
}
Dependencies
Documented from the template's package.json. The runtime has a prebuilt dependency set for Vite + React + TypeScript, so installs are fast.
| Package | Version |
|---|---|
| react | ^19.1.0 |
| react-dom | ^19.1.0 |
| vite | ^6.3.0 |
| @vitejs/plugin-react | ^4.4.0 |
| tailwindcss | ^4.1.0 |
| @tailwindcss/vite | ^4.1.0 |
| typescript | ^5.8.0 |
How it runs
- Framework
- Vite + React + TypeScript
- Dev command
- npm run dev
- Build command
- npm run build
- Output directory
- dist
- Port
- 5173
- Opens at
- /
- Difficulty
- intermediate
Projects run in an isolated sandbox with a live preview. Read the projects documentation for details on settings, snapshots and deployment.
Need the raw data? GET /api/v1/templates/vite-react-storefront returns this template with its files.
Build on Ecommerce storefront
Create a free account, start from this template, and ask the AI agent to turn it into your app.