Openfront Restaurant is a specialized version of the Openfront platform designed specifically for the food and beverage industry. It provides a complete suite of tools for restaurant management, including Point of Sale (POS), Kitchen Display Systems (KDS), table management, menu engineering, and waitlist handling.
craft-burgers.mp4
| Storefront | craft-burgers.openship.org |
| Dashboard | craft-burgers.openship.org/dashboard |
| User | craft@openship.org |
| Password | xZZ8nqW&!KT1^S6b45c^gwmv51Y50y!y@a* |
A modern, touch-optimized POS interface for staff to take orders, manage tables, and process payments. Supports complex modifications, split checks, and real-time synchronization with the kitchen.
Streamline your back-of-house operations with a digital KDS. Orders from the POS appear instantly, allowing chefs to manage preparation times, mark items as ready, and coordinate with the front-of-house.
Visualize your floor plan and manage guest seating in real-time. Track table status (Available, Occupied, Dirty, Reserved) and optimize your restaurant's capacity.
Manage complex menus with categories, products, variants, and modifiers. Set up happy hours, seasonal specials, and digital menus that update across all devices instantly.
Integrated waitlist management with SMS notifications. Allow guests to join the waitlist remotely or at the door, and manage reservations to ensure smooth service.
Streamline your restaurant operations with our MCP-powered AI Assistant.
- Menu Management: Add new menu items or update prices via natural language.
- Operational Efficiency: Mark items out-of-stock or update table status through chat.
- Permission Safe: The AI respects your user role's permissions, calling the same API as the POS and Dashboard.
- Frontend: Next.js 15 with App Router
- Backend: KeystoneJS 6 with GraphQL API
- Database: PostgreSQL with Prisma ORM
- Styling: Tailwind CSS 4 with shadcn/ui components
- Real-time: GraphQL Subscriptions & SWR for live updates
openfront-restaurant/
├── app/ # Next.js App Router
│ ├── dashboard/ # Admin platform interface
│ ├── pos/ # Point of Sale interface
│ ├── kds/ # Kitchen Display System
│ └── api/ # API endpoints and webhooks
├── features/
│ ├── keystone/ # Backend models and GraphQL schema
│ ├── platform/ # Admin platform components
│ ├── pos/ # POS-specific components
│ └── kds/ # KDS-specific components
└── components/ # Shared UI components
- Node.js 20+
- PostgreSQL database
- npm, yarn, pnpm, or bun
-
Clone and install dependencies:
git clone https://github.com/openship-org/openfront-restaurant.git cd openfront-restaurant npm install -
Configure environment variables:
cp .env.example .env
Update
.envwith your configuration:# Required - Database Connection DATABASE_URL="postgresql://username:password@localhost:5432/openfront_restaurant" # Required - Session Security SESSION_SECRET="your-very-long-session-secret-key-here-32-chars-minimum" # Optional - S3 Storage for Food Images S3_BUCKET_NAME="your-bucket-name" S3_REGION="us-east-1" S3_ACCESS_KEY_ID="your-access-key" S3_SECRET_ACCESS_KEY="your-secret-key"
-
Start development server:
npm run dev
-
Access the application:
- Dashboard: http://localhost:3000/dashboard
- POS: http://localhost:3000/pos
- KDS: http://localhost:3000/kds
canManageMenu- Edit products and pricescanAccessPOS- Access the ordering interfacecanAccessKDS- Access kitchen prep viewcanManageWaitlist- Manage guest flowcanViewReports- Financial and operational analytics
For comprehensive technical documentation, see docs.openship.org/docs/openfront/restaurant
This project is licensed under the MIT License - see the LICENSE file for details.
Built on top of next-keystone-starter