This is a demo e-commerce shoe store built with Next.js. It showcases:
- Product listing and filtering by brand and gender
- Add-to-cart functionality with quantity and size selection
- Cart persistence across page refreshes using session cookies and a local SQLite database (for demo/development only)
- Simple, modern UI with React context for state management
- Browse shoes by brand and gender
- View product details
- Add products to cart with selected size and quantity
- Cart contents persist across page refreshes (per session)
- No user authentication required
Cart data is stored on the server in a local SQLite database, keyed by a session cookie. This is suitable for local development and demo purposes only. This approach will not work on Vercel or other serverless platforms.
-
Install dependencies:
npm install # or yarn install # or pnpm install # or bun install
-
Run the development server:
npm run dev # or yarn dev # or pnpm dev # or bun dev
-
Open http://localhost:3000 in your browser.
app/— Next.js app directory (pages, layouts, API routes)components/— React UI componentsproviders/— React context provider for global statetypes/— TypeScript typesutils/— Utility functions (session, cart persistence, etc.)db.ts— SQLite/Drizzle ORM setup and schema
- Cart/session data is stored in a local SQLite file. This is not suitable for production or serverless hosting (e.g., Vercel).
This project is for demo and educational purposes only.