Vasifood is a full-featured food ordering and management system designed for office spaces. The platform allows users to browse food items, add them to a cart, place orders, and manage transactions, while providing admins with control over food items, categories, and order management.
It is built with modern Java technologies, ensuring security, scalability, and ease of maintenance.
- User Management: Registration, login, and role-based access control
- Cart & Orders: Add food items to cart, place orders, and view order history
- Food Management: Categorize food items, manage prices, and track availability
- Transactions: Secure payment processing with multiple payment modes (UPI, CARD, COD)
- Security: JWT-based authentication and Spring Security
- Analytics & Reporting: Track orders, revenue, and user activity
- Spring Boot - Backend framework for REST APIs
- Spring Security & JWT - Authentication & authorization
- JPA & Hibernate ORM - Database mapping and queries
- PostgreSQL - Relational database
- Lombok - Boilerplate reduction
- Java 17+ - Core programming language
- User: Manages user details, orders, and cart
- Cart & CartItem: Tracks items added by users
- Order: Stores order details and status
- FoodCategory & FoodItem: Organizes food items by category
- Transaction: Records payments and their status
- Java 17+
- Maven
- PostgreSQL
- Clone the repository:
git clone https://github.com/raj-rathod/vasifood-spring-boot.git