Prisma Compute app
NewRoom Booking
Book meeting rooms on a drag-to-book timeline that never double-books.
by
Mohammed ObaidNext.jsBooking app

What it does
Drag to book
Rooms are rows, half hours are columns. Drag across free time to book, drag a booking to move it, drag its edge to resize it, click it to cancel.
Red means taken
A busy slot, a time outside opening hours or one that already started turns red before you drop, so most mistakes never reach the server.
One winner per slot
Every write runs in a transaction that locks the room and re-checks the rules, and a Postgres exclusion constraint backstops it. Twenty-five people booking the same slot at once: exactly one wins.
On the office clock
Times are shown and checked in the office's time zone, whatever zone the visitor or the server is in. An empty database seeds six rooms and a day of bookings on first visit.
Deploy it in a minute
- 01
Click Deploy on Prisma
The Prisma Console copies the repository to your GitHub account and connects it to a new project.
- 02
Get a database with it
The first deploy provisions Prisma Postgres, applies the migrations and runs the app on Bun.
- 03
Push to ship
Every push to the connected branch deploys. Other branches get their own preview with an empty database.
Built something on the Prisma Stack?
Community templates get a page like this one, with your name on it. Add a folder under compute/ in prisma-examples, name yourself in the manifest, and open a pull request.
- Open source, under your GitHub name
- One-click deploy from the Prisma Console
- Listed on prisma.io/apps
