I built TableTurn for the H0: Hack the Zero Stack hackathon — a restaurant waitlist and table management app on Amazon Aurora DSQL and Vercel. I created this post as part of my entry for the hackathon. #H0Hackathon

Restaurants that cannot afford OpenTable or Yelp Guest Manager manage waitlists on paper or WhatsApp. TableTurn gives them a working alternative at $29/month.

The hardest technical requirement was preventing double-booking. Two hosts seating two different parties at the same table at the same time must be impossible, not just unlikely. I used Aurora DSQL's serializable transactions to enforce this at the database level:

await sql.begin(async (tx) => {

const table = await txSELECT id, status FROM tables WHERE id = ${table_id} FOR UPDATE;