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.
The Wall
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
Sign in down in Your Booth to post. Reading the wall needs no account.
The Jukebox
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
Sign in down in Your Booth to request or vote.
Snapshots
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
Sign in down in Your Booth to upload.
Your Booth
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
Your memos are private to this account.