A modern, full-featured grocery delivery web application built with the MERN stack (MongoDB, Express.js, React.js, Node.js). This platform allows users to browse groceries, add items to the cart, place orders, and track delivery β while admins can manage products, categories, and orders.
---- User registration & secure login (JWT-based)
- Browse and search groceries by category
- Add to cart & update cart quantities
- Place orders with address and contact info
- Track order status (Processing β Out for Delivery β Delivered)
- Admin login with secure access
- Add, update & delete grocery products
- Manage categories (Fruits, Vegetables, Dairy, etc.)
- View and update order statuses
| Technology | Description |
|---|---|
| MongoDB | NoSQL database for product, user, and order data |
| Express.js | Backend framework for Node.js |
| React.js | Frontend SPA framework |
| Node.js | Server-side JavaScript runtime |
| Mongoose | ODM for MongoDB |
| JWT | JSON Web Token for secure authentication |
| Redux Toolkit (optional) | For state management |
| Multer | For image/file uploads |
π§ͺ Testing You can test the app using tools like:
Postman for API testing
Jest or React Testing Library for unit tests (if added)
π‘οΈ Security & Best Practices JWT Authentication & Authorization
Input validation and sanitization
Password hashing with bcrypt
Environment variables for secrets
CORS configured for API access
Payment gateway integration(Stripe)
π¦ Future Features Email & SMS notifications
Delivery agent module
Mobile app version (React Native)
π Contributing Pull requests are welcome. For major changes, please open an issue first to discuss.
π¬ Contact For any queries or suggestions:
Author: Ram GitHub: @notramm