ToolFor Community center

Hallbook

Every room, every week, no double-bookings.

Hallbook is a browser-based calendar that lets community centre staff assign classes, meetings and events to rooms, catches double-bookings, and prints the weekly schedule.

Download the source

Zip, 216 KB. MIT licence. Built 19 Oct 2026.

Live preview

Loading the live site…

This is the real site, not a mock-up. Click around; the button on it opens the working app.

What you get

Everything a tool needs, already done.

Pages and screens

  • Launch page
  • Month view
  • Week view
  • Room view
  • Event form
  • Printable schedule

Features

  • Flags double-bookings in the same room and time
  • Weekly repeating events
  • Month, week and room views
  • Filter events by category
  • Print or export the weekly schedule
  • JSON export and import for backup
  • All data stays in your browser

Palette

  • #1f5f5b
  • #ffffff
  • #dfeae6
  • #1f1b16
  • #6b6257
  • #173b25

Style

  • Warm
  • Editorial
  • Minimal
Hallbook on a phone
On a phone, as shipped.

For developers

A real codebase, not a page builder export.

Stack

Vite, React 19 and TypeScript for the app. The launch page is plain HTML, CSS and a little JavaScript with no build step. Vitest for unit tests, Playwright for browser tests.

Run it

unzip hallbook.zip
cd hallbook
npm install
npm run dev

In the zip

  • site/ the launch page with the built app in site/app/
  • src/ and e2e/ the app source and tests
  • docs/technical-docs/ architecture, runbook, quick reference
  • START-HERE.md and LICENSE (MIT)

More like this

Also on the shelf

  • Education & CommunityTool

    Many Hands

    Many Hands fills your monthly volunteer rota for services or langar shifts, spreading jobs evenly, respecting away dates and flagging gaps and double bookings.

  • Education & CommunityTool

    Ruled

    Build flashcard decks, review the cards due each day, and let the SM-2 method schedule when each one comes back, all in your browser with CSV import and export.

  • Education & CommunityTool

    Lanemark

    Keep swimming class rosters, tick off each child's level skills at the poolside, see who is ready to move up, and print badge certificates and parent progress cards.