A full-stack pcparts e-commerce platform featuring a Spring Boot REST API and Angular 18 front-end.
- Java 21+
- Maven 3.9+
- Node.js 20+
- npm 10+
cd backend
mvn spring-boot:runThe API will be available at http://localhost:8081. Swagger UI lives at http://localhost:8081/swagger-ui.
cd frontend
npm install
ng serve --port 4200 --openThe SPA will be served at http://localhost:4200.
- JWT authentication (
/api/auth/login,/api/auth/register) - Product catalog CRUD (
/api/products) - Orders & status management (
/api/orders) - User profile & password updates (
/api/users) - OpenAPI docs with JWT bearer support (
/v3/api-docs)
- Angular Material UI with Tailwind enhancements
- Catalog filtering, sorting, and product detail pages
- Cart and checkout flow tied to API orders
- Profile area with personal data, password updates, and order history
- Admin console for products, orders, and users
- Global JWT interceptor and guards for authenticated/admin routes
- Dependency downloads blocked: If working behind a proxy, configure Maven/ npm proxy settings accordingly.
- Angular CLI not installed: Use
npm install -g @angular/clior execute commands vianpx. - Windows PowerShell execution policy: run
Set-ExecutionPolicy -Scope CurrentUser RemoteSignedto enable Angular CLI scripts. - TypeScript peer dependency warnings: resolve using
npm install --legacy-peer-depsif necessary. - CORS errors: ensure the backend is running on port 8081 and the frontend on 4200; CORS is configured for
http://localhost:4200.
- Orders in checkout apply a flat 21% VAT as a demonstration.