tomato-food-delivery-app
Tomato app is a full-stack system build in MERN.js which aims to offer a customer a range of food products to order. Then the customer can choose and order a menu build on its own.
The main features are:
- Complete guidance on the UI for the ordering process.
- 2 different roles (Role Based Access Control):
Manager: Can process the orders received in Real time, view a history, add new restaurants and new meals. Can change the order status.User: Can order from the restaurants. Also view a orders history.
- Use of
state-machineto validate transitions of order status. - Follow React and Node.js best practices.
Quick Start
// Install dependencies for server & client
npm install && npm run client-install
// Run client & server with concurrently
npm run dev
// Server runs on http://localhost:5000 and client on http://localhost:3000MERNJS stack
- React and React Router for frontend.
- Express and Node for the backend.
- MongoDB for the database.
- Redux for state management between React components.
Demo
Create Restaurant (Role: Manager)
Order Food (Role: User)
Let's order food from the above restaurant.
Configuration
Make sure to add your own MONGOURI from your mLab database in config/keys.js.
module.exports = {
mongoURI: "YOUR_MONGO_URI_HERE",
secretOrKey: "secret"
};
Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.


