Skip to content

About

Modern, multilingual restaurant menu management system with admin panel and order management.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

🍽️ Restaurant Menu Management System

Modern, multilingual restaurant menu management system with admin panel and order management.

✨ Features

  • 🌍 Multilingual Support: 6 languages (Turkish, English, German, French, Arabic, Russian)
  • 👨‍💼 Admin Panel: Complete menu and order management
  • 📱 Responsive Design: Works on all devices
  • 🔐 User Management: Role-based access control
  • 📊 Order Management: Real-time order tracking
  • 📈 Reports: Excel export functionality
  • 🎨 Modern UI: Beautiful, intuitive interface

🚀 Quick Start

Development

# Install dependencies
npm install

# Start development server
npm run dev

# Open http://localhost:5173

Production Deployment

Option 1: Docker (Recommended)

# Make deploy script executable
chmod +x deploy.sh

# Deploy to production
./deploy.sh production

# Deploy to staging
./deploy.sh staging

Option 2: Manual Docker

# Build and run
docker-compose up -d

# Check status
docker-compose ps

# View logs
docker-compose logs -f

Option 3: Traditional Server

# Build for production
npm run build

# Serve built files
npm run serve

# Or use any static file server
npx serve dist -l 3000

🔧 Configuration

Environment Variables

Create .env file:

NODE_ENV=production
PORT=3000

Default Admin Credentials

  • Username: admin
  • Password: admin

⚠️ Important: Change default credentials after first login!

📁 Project Structure

src/
├── components/          # React components
│   ├── admin/          # Admin panel components
│   ├── customer/       # Customer view components
│   ├── auth/           # Authentication components
│   └── common/         # Shared components
├── context/            # React contexts
├── data/               # JSON data files
├── types/              # TypeScript types
└── utils/              # Utility functions

🛠️ Tech Stack

  • Frontend: React 18, TypeScript, Tailwind CSS
  • Icons: Lucide React
  • Routing: React Router DOM
  • Build: Vite
  • Deployment: Docker, Nginx

🔐 Security Features

  • Role-based access control
  • Session management
  • Input validation
  • XSS protection
  • Rate limiting (in production)

📊 User Roles

  • Super Admin: Full system access
  • Admin: Menu, orders, languages, reports
  • Manager: Orders and reports
  • Staff: Order management only

🌐 Deployment Options

Cloud Platforms

  • Vercel: vercel --prod
  • Netlify: Drag & drop dist folder
  • AWS S3: Upload dist folder
  • DigitalOcean: Use Docker deployment

VPS/Dedicated Server

  1. Clone repository
  2. Run ./deploy.sh production
  3. Configure domain/SSL in nginx.conf

📱 API Endpoints

The system uses localStorage for data persistence. In production, you might want to integrate with:

  • REST API
  • GraphQL
  • Database (PostgreSQL, MongoDB)
  • Cloud storage

🔄 Updates

# Pull latest changes
git pull origin main

# Rebuild and deploy
./deploy.sh production

🐛 Troubleshooting

Common Issues

  1. Port already in use:

    docker-compose down
    ./deploy.sh production
  2. Permission denied:

    chmod +x deploy.sh
  3. Docker not found:

    • Install Docker Desktop
    • Start Docker service

Logs

# Application logs
docker-compose logs -f restaurant-menu

# Nginx logs
docker-compose logs -f nginx

# All logs
docker-compose logs -f

📞 Support

For issues and questions:

  1. Check logs: docker-compose logs
  2. Restart services: docker-compose restart
  3. Full reset: docker-compose down && ./deploy.sh production

📄 License

MIT License - feel free to use for commercial projects.


🎉 Happy cooking! 🍳

About

Modern, multilingual restaurant menu management system with admin panel and order management.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages