A modern restaurant management system built with React, TypeScript, and Firebase.
-
Authentication & Authorization
- Role-based access control
- Secure admin dashboard
- Persistent sessions
-
Menu Management
- Real-time menu updates
- Category organization
- Pricing controls
-
Order System
- Order tracking
- Status management
- Customer notifications
-
Business Tools
- Invoice generation
- Staff management
- Analytics dashboard
- Frontend: React 18, TypeScript, TailwindCSS
- Backend: Firebase (Auth, Firestore, Storage)
- State Management: React Query, Context API
- Forms: React Hook Form
- Build Tool: Vite
- UI Components: Custom components with TailwindCSS
node -v >= 16.0.0
npm -v >= 7.0.0-
Clone the repository:
git clone https://github.com/yourusername/hotplate.git cd hotplate -
Install dependencies:
npm install
-
Set up environment variables:
cp .env.example .env
-
Add your Firebase credentials to .env:
VITE_FIREBASE_API_KEY=your_api_key VITE_FIREBASE_AUTH_DOMAIN=your_domain VITE_FIREBASE_PROJECT_ID=your_project_id VITE_FIREBASE_STORAGE_BUCKET=your_bucket VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id VITE_FIREBASE_APP_ID=your_app_id
-
Start the development server:
npm run dev
src/
├── components/ # Reusable components
├── contexts/ # React contexts
├── lib/ # Core functionality
├── pages/ # Route components
└── utils/ # Helper functions
npm run dev# Start development servernpm run build# Build for productionnpm run preview# Preview production buildnpm run lint# Run ESLint
- Email: admin@hotplate.com
- Password: Admin@123
- Automatic retry for network failures
- Offline support
- User-friendly error messages
- Fork the repository
- Create your feature branch:
git checkout -b feature/AmazingFeature - Commit your changes:
git commit -m 'Add 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.
Made with ❤️ by Maazaowski