Design Co.

Case study · Hospitality · Web app

Jara Beach Resort: every way to the beach, booked online, from idea to launch

We took Jara Beach Resort from an idea to one booking system for overnight stays, day passes, retreats and live events. That meant the guest booking flow, the back office behind it, the build, and running it after launch.

Client
Jara Beach Resort
Platforms
Web: guest booking and back office
Services
Discovery, UI/UX, web app build, launch, CTO as a Service
Live at
booking.jarabeachresort.com
Jara Beach Resort screenshot

4

Ways to book: overnight, day pass, retreats and live events

13

Back-office modules, from guests and staff to payments and Club 100

[X]

Weeks from idea to launch

[N]

Bookings taken online since launch

The idea

A beach resort sells far more than rooms

Jara Beach Resort, a Lagos beach resort since 2019, offers overnight stays across room types from studios to ocean deluxe, day passes for a few hours on the sand, wellness retreats, and live music nights like Mádé Kuti at the Beach.

Each one used to need its own enquiry. The resort wanted guests to book any of them online, and wanted management to see revenue, occupancy and every guest's history in one place.

The brief in one line

One booking system for every way guests come to Jara, and a back office that knows each guest by name.

Who it is for

Couples and families planning a beach weekend · Day visitors and retreat groups · Fans booking a concert night · The front desk and management running the resort

The challenge

Four things an off-the-shelf hotel booking engine would get wrong

01

Four products, one checkout

A night's stay, a day pass, a retreat and a concert ticket each work differently, but guests expect to book all of them the same way.

02

Prices that change with the week

Weeknights are 10% cheaper and weekends 10% dearer. Holiday dates, vouchers, multi-night discounts and 12.5% VAT all have to land in one correct total.

03

Payments that don't always go through

When a card payment fails halfway, the team needs to see it, follow up with the guest and close it off, not find out at the front desk.

04

Guests who come back

Regulars expect to be remembered: their usual spa slot, a birthday on this visit, how they like to be contacted. And the team needs a way to flag the few guests it won't host again.

How we did it

From idea to launch in five stages

  1. 01 · Discovery

    Shape the idea

    • Workshop with management
    • Every product the resort sells
    • Rate, discount and tax rules
    • First-version scope
  2. 02 · Design

    Design every step

    • Four ways in, one flow
    • Pending reservation panel
    • Back-office dashboard
    • Built on the Jara brand
  3. 03 · Build

    Build the system

    • MERN stack
    • Peak and off-peak pricing
    • Payments and booking logs
    • Guest profiles and notes
  4. 04 · Launch

    Go live

    • Tests with real bookings
    • booking.jarabeachresort.com live
    • Staff training
    • Launch date [date]
  5. 05 · Run

    Keep it growing

    • CTO as a Service retainer
    • Hosting and support
    • New products and events
    • Reporting for management

Stage 02 · Look and feel

Sea glass, sky and a clear next step

The booking site takes its colours from the resort's own brand: a soft sea-glass green across the page, a lagoon blue for the step you're on, and near-black for what's done. The back office keeps the same calm palette, with an ocean blue for charts.

Indulgent Escapes

Sea glass

#9DD4D3

Lagoon

#75A9BF

Mist

#EBF9FF

Ocean

#6188C0 · charts

Ink

#111111

Stage 03 · The booking flow

What we designed, and why

Guests pick how they're coming, then move through four clear steps. A pending reservation panel follows them the whole way, so they always know what they've chosen and what it costs.

  1. Step 1

    Guest details

    Who's coming, and how to reach them.

  2. Step 2

    Dates and rooms

    Available dates first, then the rooms free for them.

  3. Step 3

    Alcohol and meals

    Food and drinks packages added before arrival.

  4. Step 4

    Extras and experiences

    Spa, cakes, riding and personalised touches.

Dates and rooms

Weekday deals the guest can see

A “See available dates” button shows open dates before a guest tries to pick, so nobody gets stuck on a full weekend.

The reservation panel counts off-peak nights (Sunday to Thursday, 10% off) and peak nights (Friday and Saturday, 10% more) as the dates change, so the price never needs explaining.

[Dates and rooms screenshot]

The back office

The whole resort, run from one dashboard

Thirteen modules cover bookings, booking logs, guests, blacklisted guests, staff, tasks, vouchers and discounts, payments, the Club 100 membership, settings and an admin audit log.

[Back-office dashboard screenshot]

Dashboard

The numbers a hotel manager actually uses

Beyond bookings and revenue, the dashboard tracks average daily rate, GOPPAR and TRevPAR, occupancy against cancellations, average length of stay and how far ahead guests book.

Occupancy is broken down by room type, and day passes, retreats and manual bookings each get their own count.

[Dashboard metrics screenshot]

Guest record

Every guest, remembered

Each booking opens into one page: who the guest is, how they found Jara, how they like to be contacted, the full cost breakdown and the payment.

Staff add special-occasion notes and “The Usual”, like a 2 pm spa session on day one, so a returning guest is looked after without asking twice.

Check-in, check-out and post-stay feedback all happen from the same screen.

[Guest record screenshot]

Staying in control

Resolved by staff, set by the resort

Booking logs catch every failed or pending payment, and staff mark each one resolved once it's sorted.

Rooms, extras, holiday dates and blocked dates are all set by the resort team, with no developer needed.

[Booking logs screenshot]
[Settings screenshot]

Stages 04 and 05 · Launch and run

Built for this resort, and still looked after

We built the system from scratch on the MERN stack: MongoDB, Express, React and Node.js. One backend serves the guest booking site and the back office, so a room or day pass sold online is counted everywhere at once.

After launch we stayed on as Jara's technology team on a CTO-as-a-Service retainer, keeping the platform running and adding new products and events as the resort grows.

  • MongoDB
  • Express
  • React
  • Node.js
  • [Payment gateway]
  • Back office

Live at

booking.jarabeachresort.com

Overnight stays, day passes, retreats and live events, all booked and paid for online.

Help, one tap away

A WhatsApp “Need Help?” button sits on every page, so a guest with a question reaches the resort without leaving the booking.

The result

Live, and filling the beach

Stays

[N]

Overnight bookings taken online since launch

Day passes

[N]

Day pass and retreat tickets sold

Direct

[N]%

Of stays booked direct, with no commission

Occupancy

[N]%

Average room occupancy in [period]

“[Quote from the Jara Beach Resort team about working with 24 Design Co.]”[Name], [role], Jara Beach Resort

Next case study

Lufasi Lodges: a night in the forest, booked online

Read the case study →

Let’s work together

Got an idea you want to build?

Free 30-minute call. No obligation.

Book a free idea review
Book a free idea review