MenuCloud — Microservices Restaurant Menu Platform
A microservices SaaS for restaurant digital menus: an admin uploads a new menu image and every display screen in that restaurant updates instantly, with no refresh and no staff involvement.
A cloud menu management platform split into five services behind an API gateway, built to make the update path from admin to in-store TV screen effectively immediate.
Case study
How this was built, in the order I'd walk someone through it.
- 01
Problem
A restaurant that changes its menu has to change every screen showing it. Anything requiring staff to touch the display device — refresh a page, restart an app, reconnect a stick — will not survive contact with a busy restaurant.
- 02
Users
Platform admin — manages restaurants, uploads menusRestaurant — signs up, gets a Customer ID, views their portalDiner — sees the menu on an in-store screen, no login - 03
Architecture
Five services behind an API gateway: authentication, menu, restaurant, and a realtime service, with a separate frontend. The whole system is composed with Docker.
- 04
My responsibility
Designed and built the services, the gateway and the frontend.
- 05
One important feature
An unauthenticated display endpoint
Each restaurant gets a unique customer ID and a display URL. A TV in the shop is pointed at that URL once and never touched again — no login on the display device, because a screen that can log out is a screen that will eventually be showing a login page instead of a menu.
- 06
How it works internally
The realtime service is what makes the update instant: when an admin uploads a new menu image for a restaurant, connected display clients for that customer ID are pushed the change rather than polling for it. The gateway fronts the services so the frontend and displays talk to one origin.


