What is SchellingBoard?
SchellingBoard is an open-source web app for managing sessions at conferences and unconferences. Attendees propose sessions, vote on them, and hosts place them on a time-and-room grid to build the final schedule.
The name is a tongue-in-cheek reference to Schelling points — focal points that people converge on without coordination. SchellingBoard is the ironic opposite: explicit coordination through structured proposals and voting.
Documentation
Everything about running an event on SchellingBoard lives at docs.schellingboard.org — searchable, readable on a phone, and with a version selector so you can read the docs for the release you're actually running.
- Attendee guide Pick your name, propose a session, vote, and RSVP. The page to share with your attendees.
- How it works The phase model, who may change what, voting and scheduling rules, kiosk mode, and which emails get sent.
- Admin UI guide Every setting in the admin panel and why it's there: events, days, locations, guests, and sessions.
-
Deployment
Run your own SchellingBoard with Docker or
docker compose. - Configuration Every environment variable, plus how to set up email sending.
Features
- Session proposals Attendees submit and browse session ideas
- Voting Express interest before the schedule is set
- Scheduling grid Place sessions on a time / room grid
- Event phases Proposal → voting → scheduling with configurable dates
- Multi-event Host multiple events from one deployment
- Password protection Optional single-password gate for the whole site
Self-host in minutes
SchellingBoard runs on Node.js / Bun with an SQLite database — no
external services required. Clone the repo, set
DATABASE_URL, run migrations, and start the server. See
the
deployment guide
for full instructions.