Skip to content

About

Food Order and Delivery Web Application

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

Β 

History

3 Commits

Folders and files

Repository files navigation

🍽️ RestaurantFlow_bhatiyani

Full-Stack Restaurant Management Platform
A modern, scalable restaurant management system built with React (TypeScript) frontend and Flask (Python) backend.

🎯 Project Overview

This is a complete restaurant management system that provides:

  • Restaurant Management: Multiple restaurant support with detailed profiles
  • Order Tracking: Real-time order status with visual workflow
  • Menu Management: Dynamic menu items with categories and pricing
  • Analytics Dashboard: Sales insights with interactive charts
  • Responsive Design: Modern UI with Tailwind CSS

πŸ—οΈ Monorepo Structure

RestaurantFlow_bhatiyani/
β”œβ”€β”€ πŸ“ backend/              # Flask API Server
β”‚   β”œβ”€β”€ main.py             # Main Flask application
β”‚   β”œβ”€β”€ requirements.txt    # Python dependencies
β”‚   β”œβ”€β”€ Procfile           # Railway deployment config
β”‚   └── deploy.sh          # Deployment script
β”œβ”€β”€ πŸ“ frontend/            # React TypeScript App
β”‚   β”œβ”€β”€ src/               # Source code
β”‚   β”œβ”€β”€ package.json       # Node.js dependencies
β”‚   β”œβ”€β”€ vercel.json        # Vercel deployment config
β”‚   └── deploy.sh          # Deployment script
β”œβ”€β”€ πŸ“„ README.md           # This file
β”œβ”€β”€ πŸ“„ DEPLOYMENT.md       # Deployment guide
└── πŸ“„ .gitignore          # Git ignore rules

πŸš€ Quick Start

Prerequisites:

  • Node.js 18+ (for frontend)
  • Python 3.11+ (for backend)
  • Git

1. Clone & Setup:

git clone <your-repo-url>
cd RestaurantFlow_bhatiyani

# Install backend dependencies
cd backend
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt

# Install frontend dependencies
cd ../frontend
npm install

2. Development:

# Terminal 1: Start Backend (Port 8000)
cd backend
source venv/bin/activate
python main.py

# Terminal 2: Start Frontend (Port 3000)
cd frontend
npm start

3. Access Application:

πŸ” Login Credentials

To access the dashboard, use the following sample credentials: Email: sample@gmail.com
Password: FoodZap123


🌐 Live Deployment

Production URLs:

Quick Deploy:

# Deploy Backend to Railway
cd backend && railway up

# Deploy Frontend to Vercel  
cd frontend && vercel --prod

πŸ“– Detailed deployment guide: See DEPLOYMENT.md


πŸ› οΈ Tech Stack

Component Technology Purpose
Frontend React 18 + TypeScript Modern UI with type safety
Styling Tailwind CSS Utility-first CSS framework
Charts Chart.js + React Flow Data visualization
Backend Flask + Python 3.11 RESTful API server
Deployment Vercel + Railway Cloud hosting platforms
Package Manager npm + pip Dependency management

πŸ“Š API Endpoints

Core APIs:

  • GET /health - Health check
  • GET /api/restaurants - List all restaurants
  • GET /api/restaurants/{id} - Get restaurant details
  • GET /api/orders - List all orders
  • GET /api/orders/{id} - Get order details
  • GET /api/menu-items - List all menu items
  • GET /api/menu-items/{restaurant_id} - Get restaurant menu
  • GET /api/analytics - Get analytics data
  • GET /api/analytics/dashboard/{restaurant_id} - Get dashboard metrics

Sample Response:

{
  "id": 1,
  "name": "Spice Garden",
  "cuisine": "Indian",
  "address": "123 Main St",
  "phone": "555-0123"
}

πŸ“± Features

πŸͺ Restaurant Management

  • Multi-restaurant support
  • Restaurant profiles with contact details
  • Cuisine type categorization

πŸ“¦ Order Tracking

  • Real-time order status (pending β†’ preparing β†’ completed)
  • Customer information management
  • Order workflow visualization

🍽️ Menu Management

  • Dynamic menu items by restaurant
  • Category-based organization (Main Course, Appetizer, Bread)
  • Pricing and availability tracking

πŸ“ˆ Analytics Dashboard

  • Daily order statistics
  • Revenue tracking over time
  • Popular items ranking
  • Interactive charts and metrics

🎨 Modern UI/UX

  • Responsive design for all devices
  • Professional navigation and layout
  • Interactive data visualizations
  • TypeScript for enhanced development experience

πŸ”§ Development

Backend Development:

cd backend
python main.py  # Development server with auto-reload

Frontend Development:

cd frontend
npm start      # Development server with hot reload
npm run build  # Production build
npm test       # Run tests

Code Quality:

  • Backend: Python with Flask best practices
  • Frontend: ESLint + TypeScript for code quality
  • Styling: Tailwind CSS for consistent design

πŸ“ Environment Variables

Backend (.env):

FLASK_ENV=development
PORT=8000

Frontend (.env.production):

REACT_APP_API_URL=https://your-backend-url.railway.app/api

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/new-feature
  3. Commit changes: git commit -m 'Add new feature'
  4. Push to branch: git push origin feature/new-feature
  5. Submit a pull request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


🎯 Project Status

βœ… Completed Features:

  • Full-stack architecture with React + Flask
  • Complete restaurant and order management
  • Real-time analytics dashboard
  • Production deployment on Vercel + Railway
  • Responsive design with modern UI
  • RESTful API with proper CORS configuration

πŸš€ Ready for Production Use!


Built with ❀️ using modern web technologies

About

Food Order and Delivery Web Application

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages