One system for orders, kitchens and stock
A restaurant management system for a cafe brand in Oman. Orders, stock and deliveries stay in sync across branches, kitchens and the head office in real time.
- Client
- Choice Cafe
- Industry
- Food and Beverage
- Services
- Custom Web and SaaS Engineering

The problem
Choice Cafe is a restaurant and cafe brand based in Oman, and it is growing across the Gulf region. As it grew, orders, stock and deliveries got harder to track across branches.
Choice Cafe wanted one system for daily work. That means taking orders, tracking stock, handling deliveries and checking how each branch performs. Any staff member had to be able to use it.
What we built
We built a restaurant management system that works on any device, in every branch. Firebase keeps the data in sync, so a change in one place shows everywhere at once.
- A point-of-sale (POS) system for dine-in, takeaway and online orders
- A kitchen display that shows new orders and their cooking status
- Stock tracking for each branch, with alerts when stock runs low
- Staff roles, so each person sees only what they need
- A head office dashboard with daily sales, revenue and reports for each branch
- Push notifications about order status
- Screens in more than one language, for a team that speaks different languages
The result
Branch managers check stock, chefs get new orders and the head office compares branches, all in one system.
Live updates help staff respond faster and avoid order mistakes. The system can grow with Choice Cafe as it opens new branches.
Challenges we solved
- Challenge
- Every branch needed the same data at the same moment.
- How we solved it
- We used Firebase Realtime Database and Cloud Firestore for instant updates.
- Challenge
- Managers could not see the stock in other branches.
- How we solved it
- We built central stock records that sync to each branch with Firebase functions.
- Challenge
- Different staff needed different access.
- How we solved it
- We built a role system with Firebase Auth, so each role sees its own screens.
- Challenge
- The system had to be fast on every device.
- How we solved it
- We used Firebase Hosting, Firestore indexes and faster queries.
- Challenge
- Not every staff member is comfortable with technology.
- How we solved it
- We designed simple screens with Tailwind CSS and shadcn/ui.


