This is a Single Page Appliaction with client-side rendering. It includes backend and frontend two seperate projects on two repository. The frontend client makes API calls to the backend server.
Live API Demo: https://music-store-spring-boot.herokuapp.com/
Live App Demo: https://music-store-spring-boot.herokuapp.com/
- REST API
- Heroku Deployment
- JWT authentication
- Cookie based visitors' shopping cart
- Admin Panel
- Cart & order management
- Checkout
- Catalogue
- Pagination
Backend
- Java 17
- Spring Boot
- Spring Security
- JWT Authentication
- Spring Data JPA
- Hibernate
- PostgreSQL
- Maven
Frontend
- Angular 13
- Angular CLI
- Bootstrap
- Node 16
- NPM 8
- Start the backend server before the frontend client.
Backend Side
- Install PostgreSQL
- Configure datasource in
application.yml
. cd backend
.- Run
mvn install
. - Run
mvn spring-boot:run
. - Spring Boot will import mock data into database when you run by hiberante automatically.
- The backend server is running on localhost:8080.
Frontend Side
- Install Node.js and npm
cd frontend
.- Run
npm install
. - Run
ng serve
- The frontend client is running on localhost:4200.
Note: The backend API url is configured in src/environments/environment.ts
of the frontend project. It is localhost:8080/
by default.