Airbnb Clone — Your Own StayScape
Listings, hosts, and bookings modelled as one system — including the overlapping-dates edge case most clones quietly skip.

Chapters, description and comments are on YouTube.Watch on YouTube instead
One request, end to end.
Select a stage to read what it decides.
One user table, two roles
A host is a guest who has listed something, so the same account can appear on either side of a booking — modelling hosts separately duplicates every field and then has to reconcile them.
The record a booking points at
A listing owns its price, its location and its owner, and everything the search page shows is derived from those columns.
Availability is derived, never stored
A free-nights flag on a listing is wrong the moment a booking is written and nothing tells you it went stale, so availability is computed from the bookings that already exist.
Two guests, the same nights
Checking availability and then writing the booking leaves a window in which someone else can write theirs, so the fix is making the write itself refuse to overlap.
The confirmation is a consequence
Once the write is what guarantees exclusivity, the confirmation screen, the host view and the guest's trips are all just reads of the same row.
Three things you can point at afterwards.
A schema that holds the rules
Listings, users and bookings related so the interesting constraints live in the database rather than in whichever handler remembered them.
A date search that cannot lie
Availability computed from existing bookings on every query, so results reflect what is actually free.
The double-booking closed properly
The concurrency case named, reproduced, and then removed at the write — where it can no longer happen.
Where to go from here.
Closest to this one by what it teaches, then by what it is built on.

A document workspace where Claude answers only from the files in the chat, every claim opens the exact passage it quotes, and questions are metered by plan through Stripe.

Player state that survives navigation, a catalogue fed by a real API, and playlists tied to the signed-in user.

A browser video editor for product videos: record or upload your app, let an AI director plan the camera, cuts and text, refine it on a multi-track timeline, then export an MP4 or share a link.