← Back to selected work
01 / CASE STUDY · FULL-STACK · HOSPITALITY

Roomify.

One platform. Every hotel operation.

Roomify public homepage with an embedded hotel operations demo dashboardDEMO DATA
Public homepage · verified local capture · demo dashboard
OVERVIEW

A multi-service hotel operations platform that connects bookings, guest experiences, staff operations, billing, and financial analytics.

MY ROLE

End-to-end engineering across frontend, backend, database, and ML service. Built as part of a graduation project team.

STATUS

Functional local demo · Not a verified production deployment

TECH STACK
ReactJava / Spring BootPostgreSQLFastAPIPythonDocker
01 — CONTEXT

The problem

Hotel workflows often live in separate tools. Reservations, billing, room activity, staff tasks, and reporting need to share consistent state without making everyday operations harder.

02 — APPROACH

The system

A React interface connects to a Spring Boot API backed by PostgreSQL, with a separate FastAPI service for forecasting and pricing analysis. The platform includes role-aware interfaces for guests, staff, managers, and administrators.

ArchitectureSimplified system flow

Users / Roles

Guest · Staff · Manager

React Frontend

Reservations · Billing · Inventory

Spring Boot Backend

Auth / RBAC · Workflows

Connected from Spring Boot Backend

FastAPI ML Service

Forecasts · Pricing

PostgreSQL

Operational data

03 — IMPLEMENTATION

Engineering highlights

  1. Implemented transactional reservation workflows with status-aware overlap checks and row-locking strategies to reduce conflicting bookings.
  2. Integrated Spring Boot with a separate Python/FastAPI analytics service, using request timeouts and an explicitly labelled demonstration fallback.
  3. Designed role-specific workflows with JWT authentication, authorization, audit records, and Arabic/English interface support.
  4. Built the data layer with tracked migrations and a repeatable Docker-based local demonstration environment.
04 — REALITY CHECK

Scope & transparency

Financial forecasts use synthetic/demo-oriented data; payments are mock workflows. Invoice QR fields are not proof of certified ZATCA Phase 2 integration. A backend integration-test setup issue was noted in the audited documentation. No live hosted deployment was verified.

NEXT CASE STUDYAhyiha