This project is a full-stack e-commerce application that simulates an online storefront.
It demonstrates the integration of a modern frontend (React + TypeScript) with a backend API (Express), enabling users to browse products and manage a shopping cart.
- Browse product catalog
- Add items to cart
- Update cart quantities
- In-memory data persistence
- RESTful API backend
- Input validation using Zod
The system follows a client-server architecture:
- React + TypeScript (Vite)
- Component-based UI
- State management for cart interactions
- Express.js API
- REST endpoints for products and cart
- Data validation and request handling
- React – Frontend framework
- TypeScript – Type safety
- Express.js – Backend API
- Zod – Validation
- Vite – Build tool
- Full-stack separation of concerns
- API endpoint design using REST principles
- State management for dynamic UI updates
- Input validation and error handling
- Designing full-stack architecture
- Integrating frontend and backend systems
- Managing state in React applications
- Building scalable API endpoints
- Structuring real-world web applications
This project demonstrates the ability to:
- Build and structure full-stack applications
- Implement modern frontend frameworks
- Develop backend APIs and integrations
- Apply real-world software engineering principles
- Add database (PostgreSQL / MongoDB)
- Implement authentication (JWT)
- Add payment integration
- Improve UI/UX design
Paul Munhamo
BSc Honours in Information Technology (Software Engineering)