All work Live, 2024

MeroFoodGhar

Restaurant table reservation

MeroFoodGhar interface

The problem

A restaurant that takes reservations on paper cannot tell you at 6pm whether the 8pm table is free. This turns the floor plan into data the staff can actually query.

What I built

A table is not booked for an instant, it is booked for a duration, so availability is a question about overlapping intervals rather than a lookup on a time slot.

Restaurants configure their own turn times, because a cafe and a dinner service are not the same problem.

Architecture

Django and PostgreSQL, with reservations stored as intervals per table.

Problems worth writing down

Turn time assumptions

A fixed 90 minute slot did not fit every venue. Making the duration a per restaurant setting removed the complaints.

No show handling

Tables sat empty while marked booked. A staff side release action was the simple answer, not an algorithm.