Case studyDive tourism · Mauritius

A twelve-tab logbook, now one system.

Scuba World Diving ran every dive through one Excel workbook. We fitted Manifest, our dive-centre platform, to the way they work: their logbook, levies, commissions, PADI courses and gear, in their colours, on their own server.

Scuba World Diving · Today
The Scuba World Diving dashboard: today’s revenue with the MSDA levy, divers, sessions, the day on the water, bookings and open balances
The dashboard on a phone: revenue today, divers, sessions and money owed
The dashboard on a phone: revenue today, divers, sessions and money owed
Client
Scuba World Diving, a PADI 5★ Dive Resort
Location
Mauritius
Platform
Manifest, fitted to the client
Users
Manager, reception and instructors
Status
Live on the client’s own server
Contents
  1. The challenge
  2. Our approach
  3. One entry, everywhere
  4. The dive day
  5. Money and reports
  6. Courses, clients and gear
  7. Their brand, their server
  8. Beyond the brief
  9. Effort and results
01The challenge

Twelve tabs. Seventy columns. Every figure typed again.

Every dive at Scuba World was recorded in one Excel workbook. Its twelve sheets, some of them seventy columns wide, held the daily logbook, income, expenses, clients who still owed money, supplier invoices, gear stock, diver statistics, annual payments, a month-end close and a balance sheet.

12

sheets in a single workbook

70

columns on the widest sheets

4×

the same diver typed: logbook, income, diver statistics, month-end

0

roles or audit trail: anyone with the file could change anything

The rules lived in people’s heads, and in formulas.

Money owed was spread across tabs that had to be reconciled by hand, and the manager only saw how a day went once someone had updated the sheet. The business rules were the real complexity:

MSDA levy per diverIn-house guests and non-resort visitorsCommission per instructor and activityPayments in several currenciesVAT on some activities, not others
02Our approach

We fitted the platform to their workbook, not the other way round.

Manifest already handles the day of a dive centre. The work was making it Scuba World’s: their rules, their vocabulary, their data and their way of running the day.

01

The spreadsheet as the spec.

We went through the workbook one sheet at a time. Every column became a field, every formula a business rule and every tab a module, so nothing the team relied on was lost.

02

Their rules, in the database.

26 tables and 4 live reporting views replace the MONTHLY, diver-statistics and daily-summary tabs. 53 row-level security policies give the manager, reception and instructors exactly what each role needs.

03

Their data from day one.

Their dive sites with depths and lagoon category, commission rates and 76 lines of gear from their STOCK GEAR sheet were loaded before the first login.

03One entry, everywhere

A dive is entered once, and appears everywhere it’s needed.

The daily logbook is the source. Income, invoices, balances, diver statistics and the monthly P&L are all calculated from it, never retyped.

04The dive day

The day on the water, at a glance.

The manager’s first screen shows the day itself: revenue with the MSDA levy kept separate, divers by activity, and every boat on a 06:00–21:00 timeline, with a seat that fills for each diver logged.

Scuba World Diving · Today
The dashboard: metrics, the day on the water, upcoming bookings and open balances1Revenue today, with the MSDA levy on its own line2Each boat on the day’s timeline, a seat per diver3Upcoming bookings, grouped by day4Open balances, chased from the first screen

One day, two views.

Planning is for instructors: morning, afternoon and night sessions with site, times, skipper, divers and each instructor’s workload. Finance is for the office: a live P&L for the same day, gear checked out against stock, and one click to turn the day’s rows into income records.

Scuba World Diving · Logbook
The logbook’s planning view: sessions on the day’s timeline, workload per instructor and each dive with its divers1Sessions on the day’s timeline2Workload per instructor3Each dive: site, times, instructor and divers4Planning and Finance, one click apart
Scuba World Diving · Logbook · Finance
One day, two views.
The logbook’s finance view: revenue, MSDA, commissions, expenses and profit for the day, every diver’s payment, and gear checked out
The finance view of a dive day, scrolling on its own. Hover to pause.

Bookings that flow into the logbook.

A month calendar runs from pending to confirmed to completed. Walk-ins can be booked before a client record exists, and a day’s bookings import straight into that day’s logbook.

Scuba World Diving · Bookings
The bookings calendar for October with status for every booking1Today, highlighted2Walk-ins booked before a client record exists3Pending, confirmed, completed, cancelled, no show
05Money and reports

Every rupee, split the way they count it.

Income is split by activity and payment method (cash, card or POS, bank transfer) with paid, partial and due states. Invoices are numbered SWD-YYYY-#### and generated as PDFs on the server, for a single client or as a daily batch summary.

A client invoice PDF: diving services, the MSDA levy and the payment received
The daily income summary PDF: every diver, payment method and the MSDA collected
Client invoices, numbered
Daily batch summary

The spreadsheet tabs, now calculated.

The monthly P&L, diver statistics, annual expenses by category and month, and a balance overview of what clients owe, what is owed to suppliers and outstanding course fees. Expenses use 30 categories in 8 groups that mirror the client’s own chart of accounts.

Scuba World Diving · Reports · Divers
The spreadsheet tabs, now calculated.
Diver statistics for September: a daily chart and a per-day breakdown by DSD, qualified, course, in-house, non-resort and kids
Diver statistics, once a spreadsheet tab, now a live report.
Scuba World Diving · Settings · VAT
VAT settings: VAT switched on per activity, with a rate and inclusive or exclusive pricing
VAT is set per activity, with its own rate and inclusive or exclusive pricing.
06Courses, clients and gear

From Discover Scuba to Divemaster, and every wetsuit in between.

01

PADI courses.

Each course shows progress module by module (confined water, open-water dives, knowledge reviews) alongside payments, PADI fees and certification dates.

02

Clients.

Nationality, hotel and room, PADI qualification and number, in-house and minor flags. Returning divers are found as you type, with their full dive history and a running balance.

03

Gear, tanks, boats.

Kit is counted by size, condition and availability. Service dates are tracked, and anything overdue or due within 30 days is flagged.

Scuba World Diving · Inventory · Gear
The gear inventory: units available by size, condition and next service date1Service due: overdue or within 30 days2Available units against stock, by size3An overdue service, flagged in red
Scuba World Diving · PADI course
A PADI Advanced Open Water course: modules completed, student details and the course balance
A course record: modules ticked off as they are completed, with payments and the balance.

On the boat, not just at the desk.

Every screen works at phone width, so instructors log divers and check the day from the dock.

Today
01Today
The logbook on the boat
02The logbook on the boat
Income
03Income
Everything, one tap away
04Everything, one tap away
07Their brand, their server

It looks like theirs because it is theirs.

Scuba World’s own logo heads every screen, and their sign-in opens on a slow aerial loop of a Mauritian lagoon that we produced for them. In October we refined the interface for their team: calmer, denser and easier to scan in a bright reception.

Scuba World Diving · Today
After: the refined dashboard, light, with one lagoon accent
Before: the first release’s dark dashboard with coloured tiles
First release · MarchRefined · October ‹ ›
Drag to compare the first release with the refined interface.
01

One accent colour.

Nine accent hues became ink and greys, one lagoon accent, and red only for real problems such as overdue, unpaid or a loss.

02

Built for scanning.

Compact type, tabular figures for every amount, hairline borders instead of heavy shadows, and a ⌘K menu to jump anywhere.

03

Light by default.

Light suits a bright reception desk, and a separately tuned dark theme is one click away.

Scuba World Diving · Sign in
The sign-in page over an aerial view of a Mauritian lagoon, with the Scuba World Diving logo
Their sign-in: the client’s logo over a lagoon loop produced for them. Phones and reduced-motion visitors get the still.

On infrastructure they own.

In July we moved the platform off a free cloud tier onto the client’s own server: the same database platform, self-hosted, with a custom domain, HTTPS and automatic deploys. Staff logins came across with their password hashes intact, so nobody had to reset anything.

  1. 01Copy business data and staff accounts, password hashes included
  2. 02Load through the server’s container, so the database is never exposed
  3. 03Audit every table’s row count against the source
  4. 04Switch over, with the old project kept read-only for a one-line rollback
08Beyond the brief

The tools that keep it theirs.

The brief was the system. These came with it, so the client can run, move and extend it without depending on us.

Beyond the brief

Self-hosting migration kit

Copies data and staff accounts with password hashes, clears seed rows first and prints a row-count audit for every table.

Beyond the brief

One-file database bootstrap

A 1,420-line script rebuilds the schema, security policies, views and reference data on any Postgres server.

Beyond the brief

Runbook with a rollback plan

Four phases from infrastructure to post-cutover checks. Rolling back means changing one URL.

Beyond the brief

Documentation generator

One source produces four Word specifications: product requirements, UX and UI, technical design and functional.

Beyond the brief

A written design system

Tokens, the colour budget, type scale and components, so the next screen stays consistent.

Beyond the brief

Bespoke sign-in imagery

An aerial lagoon still and a seamless video loop, made with AI tools and optimised to about 3 MB each.

Beyond the brief

Hardened container

A multi-stage build that runs as a non-root user, with automatic deploys on merge.

Beyond the brief

Their data, before day one

Dive sites, commission rates and 76 gear lines from their STOCK GEAR sheet, loaded ahead of the first login.

09Effort and results

About 135 hours, from their workbook to their own server.

135hours, about
Mapping the workbook and its rules8–10 h
Data, security and reporting views12–14 h
Fitting the modules to their operation (30 screens)40–48 h
Finance view, gear, commissions and VAT16–20 h
Specification documents6–8 h
Self-hosting, production fixes and hardening10–12 h
Interface refinement across every screen22–28 h
Their branding and sign-in imagery8–12 h

An agency would typically quote this scope, with 30 screens, role-based security, PDF invoicing, financial reporting, a data migration and a design system, as a multi-month project.

DiscoveryFitting and releasesInfrastructure
MarchWorkbook mapped, data and security set up
MarchFirst release across 30 screens
MarchFinance view, gear, commissions and VAT
JulyLive on their own server
OctoberInterface refined, their brand throughout
1×

each dive typed once, then counted everywhere it’s needed

30min

daily admin target, down from about two hours

3

roles, each seeing only what it needs

0

password resets when they moved to their own server

30

screens, one way of working across all of them

100%

client-owned code, data and infrastructure

  • One source of truth. Each dive is entered once. Income, invoices, balances, diver statistics and the monthly P&L all come from that entry.
  • Live numbers. The manager sees the day’s revenue, profit and money owed during the day, not at month-end.
  • Invoices in one click. Client and daily batch invoices come out as PDFs on demand.
  • Clear accountability. Each role sees only what it needs, and the database enforces it.
  • Built for the target. The project was scoped to cut daily admin from about two hours to under thirty minutes.
Manifest, fitted to their workbookDaily logbook with planning and finance viewsBookings with logbook importIncome, invoices and PDF generationPADI course trackerGear, tanks, boats and vehiclesReports and balancesVAT per activityTheir branding and sign-in imagerySelf-hosted deployment and migration kitFour specification documentsA written design system
The platform behind itManifest, dive-centre software by Meta Mind Lab

Running on a spreadsheet you have outgrown?

Tell us how your team works today. We will fit the software to it, carry your brand and hand you the keys.

Looking for something specific?

Our services:All services Custom software E-commerce Websites and branding Business systems Mobile applications AI and automation Technology consulting Meta Field Manifest Work

Meta Mind Lab is a software and digital studio based in Mauritius. We build custom software and web applications with Next.js, TypeScript and PostgreSQL, mobile apps for iOS and Android with React Native, and online stores on Shopify and WooCommerce, from the catalogue and payments to shipping and supplier data. For brands, we design websites and visual identities and support them with SEO and Google Ads. We connect business systems so information stops being copied by hand, and bring AI and automation into everyday work, with people in control. Need direction first? Technology consulting helps you choose the right platform. For field service teams, Meta Field handles scheduling, signed reports, invoicing and accounting, and for dive centres, Manifest runs the logbook, bookings, payments and PADI courses. See how it comes together in our case studies and product imagery and motion.

Industries:Hospitality and tourism Retail and e-commerce Food and beverage Beauty and cosmetics Professional services Automotive Logistics Real estate Healthcare Engineering Agriculture Equestrian businesses