← All examples
AFTER HOURS
the everything demo · Dillo
Reading the wall

Dillo example · The everything demo

After Hours.

One small app running the whole Dillo surface. A public wall anyone can read, a jukebox driven by cloud functions, real file uploads, and a private booth that only you can see. Start with the wall: read tonight's notes, then sign in in Your Booth to pin your own.

…notes on the wall
…songs in the queue
…votes cast
…snapshots
…top song
01

The Wall

Database Permissions Real-time

Notes live in the Note table. Anyone can read them, only the author can edit or delete (view: anyone, edit: owner). Sign in and every change arrives over a realtime subscription, so open this page twice and watch them sync.

Pin a note

02

The Jukebox

Cloud functions Permissions

Requests and votes go through two cloud functions with declared input and output contracts: requestSong validates and creates the row, voteForSong rejects double votes before writing the Vote row. The queue tally is always computed from Vote rows, so the count stays honest, and the queue re-sorts when votes land.

Request a song

03

Snapshots

Files Permissions

Photos are Dillo files attached to Snapshot records. The schema allows images only, up to 10 MB (file().accept('image/*').maxSize('10 MB')). Dillo serves file downloads to signed-in users, so sign in to see the night's photos. Anyone signed in can view them; only the uploader can delete.

Add a snapshot

04

Your Booth

Users and auth Permissions

Memos are view: owner, edit: owner. Dillo tables are private by default, so these are visible only to you. Not even the demo reset in the debug menu can touch them.

Create an account

Sign in