A comprehensive restaurant management solution built with React, TypeScript, and Vite. This application helps restaurant owners and staff manage orders, inventory, menus, tables, expenses, and more.
- Dashboard: Real-time analytics and restaurant performance metrics
- Order Management: Create, track, and manage customer orders
- Menu Management: Add, edit, and organize menu items and categories
- Inventory Management: Track stock levels and manage supplies
- Table Management: Manage restaurant tables and seating
- Expense Tracking: Record and categorize restaurant expenses
- User Role Management: Role-based access control for staff members
- Kitchen Display System: Real-time order updates for kitchen staff
- Reports: Generate sales, inventory, and performance reports
- Frontend: React 19, TypeScript
- Build Tool: Vite
- Styling: TailwindCSS
- UI Components: Radix UI
- Forms: React Hook Form with Zod validation
- State Management: React Redux
- Routing: React Router
- Charts: Recharts
- Icons: Lucide React, Hugeicons
- Node.js (v18 or higher)
- Yarn or npm
-
Clone the repository:
git clone https://github.com/nrbnayon/restaurant-management-system.git cd restaurant-management-system -
Install dependencies:
yarn install # or npm install -
Start the development server:
yarn dev # or npm run dev -
Open your browser and navigate to:
http://localhost:5173
yarn dev- Start the development serveryarn build- Build for productionyarn lint- Run ESLintyarn lint:fix- Fix ESLint issuesyarn preview- Preview the production buildyarn type-check- Run TypeScript type checking
restaurant-management-system/
├── public/ # Static assets
├── src/
│ ├── Layouts/ # Layout components
│ ├── Pages/ # Page components
│ ├── Routers/ # Application routes
│ ├── assets/ # Images, icons, etc.
│ ├── components/ # Reusable components
│ ├── config/ # Configuration files
│ ├── contexts/ # React contexts
│ ├── data/ # Mock data
│ ├── hooks/ # Custom hooks
│ ├── lib/ # Utility functions
│ ├── redux/ # Redux store and slices
│ └── types/ # TypeScript type definitions
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
