ChefCito is a modern restaurant management system built with Next.js 14, featuring Point of Sale (POS), Kitchen Display System (KDS), inventory management, and more.
- 🍽️ Point of Sale (POS) - Intuitive order taking and payment processing
- 👨🍳 Kitchen Display System (KDS) - Real-time order management for kitchen staff
- 📊 Reports & Analytics - Business insights and performance metrics
- 🏪 Restaurant Management - Menu, inventory, and staff management
- 👥 User Management - Role-based access control system
- 💳 Payment Processing - Integrated with PayPhone for Ecuador
- 📱 Mobile Responsive - Works on all devices
- Frontend: Next.js 14, React 18, TypeScript
- UI Components: Shadcn/ui, Tailwind CSS
- State Management: Zustand, SWR
- Backend: Next.js API Routes
- Database: MongoDB with Mongoose
- Authentication: JWT-based auth
- Internationalization: Custom i18n implementation
- Payment Gateway: PayPhone API integration
- Node.js 18+
- MongoDB (local or Atlas)
- PayPhone API credentials (for payment processing)
- Clone the repository:
git clone <repository-url>
cd chefcito-main- Install dependencies:
npm install- Set up environment variables:
cp .env.local.example .env.local- Configure your
.env.localfile:
# MongoDB Configuration
MONGODB_URI=your_mongodb_connection_string
MONGODB_DB=chefcito
# PayPhone API Configuration (optional)
TOKEN=your_payphone_token
STORE_ID=your_store_id- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
ChefCito integrates with PayPhone, Ecuador's leading mobile payment platform. This enables restaurants to accept payments via:
- Mobile phone payments
- WhatsApp payments
- SMS payments
- QR code payments
- Register for a PayPhone merchant account at payphone.ec
- Obtain your API credentials (Client ID and Client Secret)
- Add the credentials to your
.env.localfile - Configure PayPhone as a payment method in the Restaurant settings
- Secure Payments: End-to-end encryption and PCI compliance
- Multiple Channels: Customers can pay via WhatsApp, SMS, or mobile app
- Real-time Status: Instant payment confirmation and status updates
- Refunds: Built-in refund processing capability
- Webhooks: Automatic notification of payment status changes
ChefCito includes a membership system with two tiers:
- Free Tier: Basic features and limited access
- Pro Tier: Full feature set ($9.99/month)
Members can upgrade/downgrade directly from their profile page using PayPhone payments.
src/
├── app/ # Next.js 14 app directory
│ ├── (app)/ # Main application routes
│ │ ├── kds/ # Kitchen Display System
│ │ ├── orders/ # Order management
│ │ ├── pos/ # Point of Sale
│ │ ├── profile/ # User profile
│ │ ├── reports/ # Business reports
│ │ └── restaurant/ # Restaurant management
│ ├── api/ # API routes
│ └── login/ # Authentication
├── components/ # Reusable UI components
├── lib/ # Utilities and business logic
├── models/ # Database models
├── services/ # External service integrations
└── locales/ # Internationalization files
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add 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.
For support, email support@chefcito.com or join our Slack community.