- Users can search any restaurant dynamically just by entering initial words.
- Users can choose items from the menu to place an order. The total cost of the order is displayed and the user also gets free delivery after the total amount exceeds a certain amount.
- User can mark items as their favorite.
- Users can access a variety of payment options due to the implementation of the RazorPay API.
- User can check out from their cart and place an order.
- User can cancel a placed order.
- User can check their order history and running order.
- User can view invoices for individual orders.
- User can upload profile picture and update profile details.
- Admin can add a restaurant, and update and delete restaurant details.
- Admin can add, update, and delete the menu of each restaurant.
- Multiple Modules
- Components, Template and DataBinding
- Forms and Form Validation
- Directives
- HttpClient
- Dependency Injection
- Routing & Navigation
- Services
- Guarding
- Used separation of concerns principle
- Microservices
- REST APIs using spring boot
- Spring Data JPA for relational databases
- Spring Data MongoDB for NoSQL databases
- JWT-based security for APIs
- Docker Integration
Make sure you have Node.js installed.
Make sure you have Docker Desktop installed for backend.
Also make sure you have MySQL and MongoDB Compass installed.
-
If you do not have docker desktop on your system you will need to create and configure port, database etc., in application.properties of every microservice
-
Clone the project or clone your own forked project
- Run the compose.yml for the backend if you have docker OR run each microservice separately after creating and configuring application.properties
- Run docker-compose.yml for frontend if you have docker OR go into your frontend directory from a terminal and type:
npm install latest
- After installing npm successfully, open a terminal in the frontend directory and type:
ng serve --hmr --open
-
How to reach me : ashutosh.k.work@gmail.com