← Back to Selected Work
Case Study

Umah Shanti Villa

Luxury Villa Booking Platform

At a Glance Proof

Role:Full-Stack Developer · Freelance
Timeline:Freelance Client Delivery
Team Context:Solo: full stack and deployment
Current Status:Live
Outcome:

Launched a booking platform for a luxury Bali villa with date conflict prevention and integrated card payments.

What I Owned:

Everything: booking logic, payment integration, UI design implementation, deployment.

Tech Stack:

Next.js · Node.js · Payment Gateway · Vercel

Section 01

Project Overview

The villa wanted a direct booking site to avoid paying high commissions to travel platforms, but needed it to handle reservations reliably, especially preventing double-bookings.

Target Users: International guests and the villa's property managers.

Key Constraints:
  • ▹Two guests cannot book the same dates simultaneously.
  • ▹High-quality images need to load fast on mobile for international visitors.
  • ▹Payment processing needs to handle failures gracefully.
Explicitly Out of Scope:Multi-property channel manager sync.
Section 02

Product Flow & System Context

Direct booking site connected to a reservation engine and payment gateway.

Guest Browser [Next.js] → Booking Engine [Date conflict check] → Payment Gateway → Confirmation
Atomic reservation check tied directly to payment settlement.
Section 03

Tech Stack and Runtime Architecture

Villa Website

Fast, image-rich showcase and booking UI

Next.js, Tailwind CSS

Booking Service

Date-range locking and reservation state

Node.js Serverless

Payment

Secure card capture and charge

Stripe / Card Gateway
Section 04

Critical Execution Flow

Guest Books and Pays

How a date selection turns into a confirmed, paid reservation without conflicts.

01

Date Selection

Guest picks check-in/out; system checks real-time availability.

02

Hold

Server creates a 15-minute hold, blocking the same dates for other guests.

03

Payment

Guest pays via the secure card form.

04

Confirmation

Payment webhook confirms the charge; hold becomes a permanent reservation.

Section 05

Architectural Decisions & Trade-Offs

DecisionAlternatives ConsideredWhy ChosenCost / Risk AcceptedQuality Attribute
Static site generation with on-demand revalidationFull server render on every requestNear-instant load for international visitors with dynamic availability still up to date.Needs a revalidation trigger when villa rates or photos change.Performance & SEO
Server-side date conflict checkClient-only disabled date arraysEliminates race conditions where two guests try to book the same holiday window at the same time.Needs a background job to release abandoned 15-minute holds.Reliability
Section 06

What We Delivered & Future Roadmap

What Shipped
  • ✓Fast, high-quality marketing and booking site.
  • ✓Conflict-free reservation engine.
  • ✓Direct card checkout with automated receipts.
What I Would Improve Next
  • →iCal sync with Airbnb and Booking.com.
  • →Multi-currency geo-pricing.
More Architectures

Explore Other Flagship Case Studies

Flagship Case Study

SentinelKids

Parent-Child Digital Safety & Device Management Platform

Delivered a resilient parent-child monitoring infrastructure processing high-frequency device telemetry with sub-200ms alert propagation, real-time web filtering, instant app blocking, and multi-device synchronization across zero-rollback releases.

Node.js & Express.js backend services Read Case Study →
Flagship Case Study

Sehat Kahani

Pakistan's Leading Telemedicine & Digital Healthcare Platform

Built resilient, high-volume telemedicine pipelines serving thousands of daily consultations across rural clinics, urban mobile users, and major corporate healthcare partners with sub-60-second physician match times.

Angular clinical management portals Read Case Study →
Flagship Case Study

Neem

Embedded Financial Infrastructure & Banking-as-a-Service Platform

Delivered mission-critical embedded banking, collections, and bulk disbursement modules for a licensed financial infrastructure platform, facilitating seamless money movement, automated reconciliation, and earned wage access.

Next.js & React for dashboard UX Read Case Study →

Interested in how this project approach can help your product?

I can walk you through the stack choices, delivery process, and results.