Restaurant web service for food delivery
Diamond Restaurant
User registration/authorization
Email verification and notifications
Password encryption
Food ordering
Payment options
Order tracking in the account
Localization (EN, RU)
Add more email notifications
Add "Forgot password?" option
Add more content to the site
Add feature "Change theme"
Server: Java 8, Servlet, JSP
Client: Bootstrap 5, CSS
Database: PostgreSQL 13
Tests: JUnit 5, Mockito
Build tool: Maven
Web server/Servlet container: Tomcat 8
CI/CD: Heroku
Restaurant
There are roles: Client, Manager. The client (authorized user) orders from the menu - the catalog of dishes, and also has an opportunity to look through the catalog with sorting:
by the name of the dish;
by cost;
category and filter the list of dishes by category.
The customer, within one order, can order several identical dishes. The manager manages orders: after receiving a new order, sends it for preparation. After cooking, the manager transfers order to delivery. After delivery and receipt of payment, the Manager transfers the status of the order to "completed".
Also, additional features have already been added:
more sorting and filtering options;
password encryption;
email verification and notifications;
account page with user and orders information;
bootstrap was used to improve the frontend;
Heroku deployment to provide CI/CD.
Clone the project
git clone https://github.com/zhadan13/restaurant.git
Go to the project directory
cd ../restaurant
Run application
mvn tomcat:run
Clone the project
git clone https://github.com/zhadan13/restaurant.git
Add tomcat configuration to project
Run application
Follow the link
https://localhost:8080/DiamondRestaurant
Note: you need to have tomcat 8 preinstalled.
Details: https://tomcat.apache.org/download-80.cgi
@zhadan13
For support, email [email protected].