QR MENU is a cutting-edge digital restaurant menu and ordering platform built to replace traditional paper menus. Designed perfectly for modern restaurants, cafes, and bars, it empowers owners to dynamically update menus, generate unique table QR codes, and gain real-time insights into orders and revenue.
⚠️ Note: The AI-Powered Food Assistant feature has been temporarily removed during our TypeScript migration but will be making a return very soon!
| Feature | Description |
|---|---|
| 🛡️ Type-Safe & Robust | Rebuilt entirely in TypeScript for top-tier stability and maintainability. |
| ✨ Stunning UI | A pristine, highly upgraded interface powered by Tailwind CSS & Framer Motion. |
| 📱 Dynamic QR Codes | Unique QR codes per table for instant, frictionless ordering. |
| � Seamless Payments | Built-in Razorpay integration for secure and fast checkouts. |
| 📊 Real-Time Analytics | Interactive graphs using Recharts to track revenue and trends. |
| 🔐 Secure Auth | Custom JWT & Bcrypt implementation to keep merchant data safe. |
| 🖼️ Visual Menu Builder | Drag-and-drop ordering and Cloudinary image hosting. |
| � Export Capabilities | Generate beautiful PDF invoices and QR codes on the fly. |
🔥 Click to view Merchant Dashboard & Tools
| Admin Dashboard | Menu Builder |
|---|---|
![]() |
![]() |
| QR Builder | QR Services |
|---|---|
![]() |
![]() |
| Order History |
|---|
![]() |
📱 Click to view Customer Experience
| Mobile Menu View 1 | Mobile Menu View 2 |
|---|---|
![]() |
![]() |
| Cart & Checkout | Transaction History |
|---|---|
![]() |
![]() |
- Framework: Next.js 15 (React 19)
- Language: TypeScript
- Styling: Tailwind CSS, Radix UI primitives
- Animations: Framer Motion
- State Management: Redux Toolkit
- API: Next.js Server API Routes
- Database: MongoDB & Mongoose
- Authentication: Custom JWT & Bcrypt
- Payments Gateway: Razorpay
- Asset Storage: Cloudinary
- PDF Generation: jsPDF
Follow these instructions to get a copy of the project up and running on your local machine.
git clone https://github.com/Softenrj/qr-menu.git
cd qr-menunpm installCreate a .env file in the root directory and add your credentials:
# Database
MONGO_URI=<-- your mongo db url -->
# Security
SALT_ROUNDS=<-- your salt rounds -->
JWT_SECRET="<-- your jwt secret -->"
# Cloudinary (Image Hosting)
CLOUDINARY_URL=<-- your cloudinary url -->
CLOUDINARY_CLOUD_NAME=<-- your cloudinary cloud name -->
CLOUDINARY_API_KEY=<-- your cloudinary api key -->
CLOUDINARY_API_SECRET=<-- your cloudinary api secret -->
# RazorPay (Payments)
NEXT_PUBLIC_RAZORPAY_KEY_ID=<-- your razorpay key id -->
RAZORPAY_KEY_ID=rzp_test_S7flSbkmha0t1U
RAZORPAY_KEY_SECRET=lzIiuyFiNj1Unx4tN7HiX7I8npm run devYour app will be running at http://localhost:3000.
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is intended for educational purposes only. If you wish to use it for commercial or other purposes, please request permission.
rjsharmase@gmail.com









