Full Stack · 2026 · Work in progress

Restaurant
Reservation
Platform

A multi-branch reservation and operations platform designed to connect the customer booking experience with the restaurant's internal management workflow.

Role

Full Stack Development

Type

Digital Product

Stack

React · TypeScript · NestJS

Status

In development

01 — The Challenge

One reservation system.
Multiple branches.
Two different experiences.

The challenge is to coordinate reservations across five restaurant locations while giving staff a clear, real-time view of availability, bookings, and reservation status.

Customers need a frictionless booking experience, while restaurant staff need centralized control, branch-level filtering, and reliable information to manage daily operations.

02 — The Solution

A connected product for customers and restaurant operations.

The solution brings both sides of the reservation process into a single platform, with dedicated experiences for customers and restaurant staff, backed by a centralized API and shared business logic.

Customer

Reservation experience

Branch selection, date, time and party size, reservation notes, active bookings and controlled cancellation.

Restaurant

Operations dashboard

Centralized reservation management with branch filters, confirmation and cancellation workflows, and event tracking.

03 — Architecture

One ecosystem.
Shared business logic.

The project uses a monorepo architecture to keep the customer experience, restaurant operations and backend services independent while sharing types, validation and configuration.

Customer

Customer Mobile

Public reservation experience for discovering availability, creating bookings and managing active reservations.

Expo · React Native

Operations

Restaurant Mobile

Private operational interface for restaurant teams to manage reservations across branches.

Expo · React Native

Backend

NestJS REST API

Centralized business logic for authentication, availability, reservations, branches, users and operational workflows.

TypeScript · NestJS · REST

Shared

Types

Shared

Validation

Shared

Configuration

A TurboRepo workspace keeps applications and shared packages in a single codebase, reducing duplication and keeping contracts consistent across the product.

04 — Key Features

Built around the real reservation workflow.

01

Multi-branch availability

Availability is calculated according to branch, date, time and party size.

02

Reservation management

Customers can create and review reservations while restaurant teams manage their operational status.

03

Controlled cancellation

Customer cancellation follows business rules, including the defined cancellation window before a reservation.

04

Operational traceability

Reservation events provide a record of important actions and status changes throughout the workflow.

05 — Technical Decisions

Structure before complexity.

The architecture separates product experiences while keeping business contracts and validation shared across the codebase. The goal is to make the system easier to evolve without duplicating core rules between applications.

Monorepo

TurboRepo organizes applications and shared packages in a single workspace.

Validation

Shared schemas help keep validation rules consistent between different parts of the product.

Domain

Reservations, branches, schedules and users are modeled as explicit business concepts.

API

A centralized REST API keeps operational rules away from the client applications.

Project Status

Work in progress.

The platform is currently under development. This case study will evolve as implementation, testing and product validation progress.

Back to selected work