Meeting Room Booking
A small-office meeting room booking app for a 15-person office with three rooms. Signed-in users browse a room directory, view a shared booking calendar, and manage their own bookings. Admins create, edit, and deactivate rooms; deactivating a room keeps its existing bookings but blocks new ones. Bookings have a room, title, start and end time, notes, and a Confirmed or Cancelled status. Backend-enforced rules: only active rooms can be booked, end time must be after start time, a booking can be at most 4 hours long, two active bookings for the same room must never overlap, cancelled bookings free the slot immediately, users can cancel only their own bookings, and other people's bookings reveal only that the time is occupied.