SchellingBoard developer documentation
SchellingBoard developer documentation
SchellingBoard developer documentation
SchellingBoard is a scheduling app for participant-driven events — attendees propose sessions, vote on them, and the accepted ones are scheduled onto a grid of rooms and time slots. It is self-hosted, backed by a single SQLite file, and documented for its users at docs.schellingboard.org.
This site is for people working on it. It tracks main, so it describes the code as it is now
rather than the last release; a contributor on a release branch reads that branch’s docs/dev/ in
the repository.
Start here
| Chapter | For |
|---|---|
| Getting started | stack, prerequisites, setup, env vars, the dev commands |
| Coding guidelines | code style, when to write a comment, the colour tokens, the authorization rule |
| Testing | test strategy, TDD workflow, running tests, the Docker tier |
| Version control | commit conventions, pull requests, issues |
| Changelog | what belongs in CHANGELOG.md and in the in-app release notes |
Reference
| Chapter | For |
|---|---|
| Architecture rules | the conventions the build enforces, and how to add one |
| The server and the API | server/ and /api/v1: adding a use case and its route |
| The web app | apps/web: the SPA, how the server serves it, running it |
| Database migrations | generating migrations, resolving drizzle conflicts |
| Running multiple instances | ports and env files when several clones share a machine |
| Documentation and the sites | how the three published sites are built |
| Releasing a new version | tagging, the release checklist, publishing Docker images |
| GitHub issues | setting Issue Type and Priority via gh api graphql |
Design
| Chapter | For |
|---|---|
| ADRs | why the significant decisions were made |
| Architecture | the design on one screen, decisions, C4 diagrams, what is not built |
| Diagram explorer | the same C4 model, browsable — every view, with drill-down |
| Attendance model | predicting how many people show up to a session, from its voting results |
| Matrix chat feasibility | exploratory notes on integrating a Matrix chat server — not yet decided |
| Statistics: figures | the admin statistics: data and figures (decisions in ADR 0019) |
| Statistics: later | what to collect for better statistics — not built |
Elsewhere
- The repository —
CONTRIBUTING.mdpoints back here, andAGENTS.mdholds the instructions coding agents are given. - docs.schellingboard.org — the attendee, organizer and self-hosting documentation, published from release tags.
- schellingboard.org — the project’s landing page.