A comprehensive food chain management system built with a modern full-stack architecture. This application helps manage restaurant operations, inventory, orders, and customer interactions for a food chain business.
- Features
- Tech Stack
- Project Structure
- Getting Started
- Installation
- Usage
- API Documentation
- Contributing
- License
- Order Management: Create, track, and manage customer orders
- Inventory Control: Monitor stock levels and manage inventory
- Menu Management: Add, update, and remove menu items
- User Authentication: Secure login and user management
- Analytics Dashboard: View sales, revenue, and performance metrics
- Multi-location Support: Manage multiple restaurant locations
- Real-time Updates: Live order tracking and notifications
- React.js / Next.js
- Modern UI/UX with responsive design
- State management (Redux/Context API)
- RESTful API integration
- Node.js with Express.js
- RESTful API architecture
- Authentication & Authorization
- Database integration
- MongoDB / MySQL / PostgreSQL
- Efficient data modeling and indexing
Barista-Food-Chain/
├── backend/ # Backend server code
│ ├── config/ # Configuration files
│ ├── controllers/ # Route controllers
│ ├── models/ # Database models
│ ├── routes/ # API routes
│ ├── middleware/ # Custom middleware
│ └── server.js # Entry point
│
├── frontend/ # Frontend application
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── pages/ # Page components
│ │ ├── services/ # API services
│ │ ├── utils/ # Utility functions
│ │ └── App.js # Main app component
│ └── public/ # Static assets
│
└── README.md
Before you begin, ensure you have the following installed:
- Node.js (v14 or higher)
- npm or yarn
- MongoDB/MySQL (depending on your database choice)
- Git
- Clone the repository
git clone https://github.com/Krishmal2004/Barista-Food-Chain.git
cd Barista-Food-Chain- Install Backend Dependencies
cd backend
npm install- Install Frontend Dependencies
cd ../frontend
npm install- Environment Setup
Create a .env file in the backend directory:
PORT=3000
DATABASE_URL=your_database_connection_string
JWT_SECRET=your_jwt_secret_key
NODE_ENV=developmentCreate a .env file in the frontend directory:
REACT_APP_API_URL=http://localhost:3000/apicd backend
npm start
# or for development with hot reload
npm run devThe backend server will start on http://localhost:3000
cd frontend
npm startThe frontend application will start on http://localhost:3000
You can run both frontend and backend simultaneously from the root directory:
# Install concurrently globally if not already installed
npm install -g concurrently
# Run both
npm run devPOST /api/auth/register- Register a new userPOST /api/auth/login- User loginPOST /api/auth/logout- User logout
GET /api/orders- Get all ordersGET /api/orders/:id- Get order by IDPOST /api/orders- Create new orderPUT /api/orders/:id- Update orderDELETE /api/orders/:id- Delete order
GET /api/menu- Get all menu itemsGET /api/menu/:id- Get menu item by IDPOST /api/menu- Add new menu itemPUT /api/menu/:id- Update menu itemDELETE /api/menu/:id- Delete menu item
GET /api/inventory- Get inventory statusPUT /api/inventory/:id- Update inventoryPOST /api/inventory/restock- Restock items
Run tests for the backend:
cd backend
npm testRun tests for the frontend:
cd frontend
npm testContributions are welcome! Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Krishmal2004
- GitHub: @Krishmal2004
- Thanks to all contributors who have helped with this project
- Inspired by modern food chain management systems
- Built with ❤️ for the food service industry
For support, email krishmaldinidu5466@gmail.com or create an issue in the repository.
Note: This is an active project and is continuously being improved. Feel free to suggest features or report bugs!