CASE 07
Scheduling & Booking Suite
Booking used to run on a rented tool that owned every step. Now it runs on a system I own, from open slot to meeting link to logged record, and a double-booking cannot be written.
- Role
- Design, build, automate
- Client
- Internal and client-facing deployments
- Year
- 2026
- Stack
- Web app · Database · Calendar + video
- Status
- Live in production
01 The problem
Two businesses booked on rented tools. The tools worked, and the businesses owned nothing. The booking, the meeting link, the confirmation, the calendar invite, the record, all of it lived inside software they could not change. Every month they paid to keep using it, and every month they walked away with nothing of their own. When two people grabbed the same slot, someone had to notice, apologize, and rebook by hand. The rules belonged to the vendor, and so did the data. If a price changed or a feature vanished, they had no say. They wanted the whole flow to be theirs, from the first open slot to the meeting link to the logged record.
02 The system
A booking system they own. A visitor opens one link, picks a meeting type, and sees only real open slots. The slot locks in the database before anything else runs. The meeting link is created, the confirmation and calendar invite go out, and the team is told, all on their own and with no person in the loop. One version runs company-wide, where anyone can book any team member from a single page. The other faces clients directly and checks live against your connected calendars before it offers a slot, so a time that clashes is never shown. They hold every part now, the page, the database, the meeting link, and the record. Nothing sits behind a tool they cannot open, and nothing waits on a person to copy a time from one place to another.
03 How it holds up
A double-booking cannot be written, because the database itself rejects an overlap before it is saved. This is not a check we remembered to add in one place. The database refuses the second booking no matter how the request arrives, so two people taking the same slot is not a mistake that can happen. An online booking only confirms once a real, joinable meeting link exists, or it fails closed and tells the person, so a confirmation never points at a link that was never made. The client-facing version carries around a hundred tests and runs them on every change, so a fix in one corner cannot quietly break another. Behind it, six automation workflows run on their own. They cover new bookings, cancellations, reminders, an error handler, a recurring health check, and a self-healing fixer that repairs the common faults on its own. Every action is signed and reversible by default, so you can see what ran and undo it if you ever need to.
04 The result
Both businesses stopped renting their scheduling. The flow is theirs now, from the open slot to the meeting link to the logged record. No one apologizes for a double-booking, because the database will not allow one. No one copies times between calendars by hand, because the reminders, confirmations, and health checks run with no person in the loop. They own the whole thing, they can change any part of it, and a bad slot cannot be written in the first place.
· How it works
- 01
Pick a time
A visitor opens one link, picks a meeting type, and sees only real open slots.
- 02
The slot locks
The booking is written inside a database lock that rejects any overlap before it can happen.
- 03
The meeting is created
A video meeting link is generated, and the booking only confirms once a real link exists.
- 04
Everyone is told
Confirmation, calendar invite, and team notice go out on their own, with no person in the loop.
- 05
Conflicts stay clear
Live checks block any slot that clashes with a connected Google or Outlook calendar.
· Results
- Double-booking
- Blocked at the DB
- Tests
- ~100 + CI
- Status
- Live in production
1. Bookings are written through a database function with an exclusion lock, so two people cannot take the same slot.
2. An online booking holds the slot, creates the meeting, and only confirms once a real, joinable link is verified, or it fails closed and says so.
3. Six automation workflows run behind it: new bookings, cancellations, reminders, a recurring health check, an error handler, and a self-healing fixer that repairs the common faults on its own, every action signed and reversible by default.