A small e-commerce demo built with React. It covers a typical shop flow: browse products, filter/sort, add items to a basket, adjust quantities, and see totals.
- Product grid with images, titles, and prices
- Filter by size (XS–XXL)
- Sort by price (lowest → highest / highest → lowest)
- Add items to basket, increase/decrease quantity, remove items
- Clear basket + basket total calculation
- Basket items persist via LocalStorage
- Client-side routing: Home (Products) / Basket
- React (Create React App)
- React Router
- Redux Toolkit (products + cart slices)
- Bootstrap 5
Products are loaded from a local JSON file (instead of an external API) to keep the demo stable:
public/data/products.json
Product images are served from:
public/products/<sku>_2.jpg
yarn install
yarn startnpm install
npm startThen open:
src/
App.js
store.js
productSlice.js
cartSlice.js
components/
NavBar.jsx
Products.js
Filter.js
Basket.js
util.js
public/
data/products.json
products/- This is a learning/demo project. “Checkout” is a placeholder (no real payment processing).
- Cart items are stored in LocalStorage, so they remain after refresh (same browser/device).
See LICENSE.


