Hype StackHypeStack

Search

Search the packs, templates, docs, and pages

Whiteboard

A realtime collaborative whiteboard: an infinite canvas with sticky notes, freehand ink, shapes, text, images, and frames, synced live over websockets. This is the pack-whiteboard pack. The Mind Map template is built on it.

No special integration needed

The whiteboard runs on the base services every Hype Stack app already has:

  • Postgres for boards and their revision history.
  • WebSockets (the template's socket router over Valkey) for live operations and presence.
  • RustFS for images dropped onto a board.

There is no third-party account to create and no pack-specific environment variables to fill in.

What it depends on

  • A starter pack for auth, organizations, and permissions. Boards belong to the signed-in user's organization.

What you get

  • /boards and /boards/$boardId: an infinite canvas with pan, zoom, a minimap, and virtualized rendering so large boards stay smooth.
  • Seven element kinds: sticky note, freehand ink, rectangle, ellipse, text, image, and frame.
  • Live presence: remote cursors and selections, per user.
  • Undo and redo that survive other people's edits.
  • A layers panel with visibility and lock per element.
  • Timestamped version history with one-click restore. Revisions are capped so the table does not grow without bound.
  • Realtime operation sync and autosave through the /ws/board socket namespace.

Web and desktop only: this pack ships no mobile or admin surface.

After installing

Two Prisma models arrive (Board, BoardRevision). Say yes when the CLI offers to run the migration, or run pnpm --filter @hype-stack/backend migration:create afterwards.

Environment variables

None. The pack reads the base template's DATABASE_URL, VALKEY_URL, and RUSTFS_* values and relies on the starter for auth.

Sponsor open source

Every purchase and sponsorship funds my 8+ years of work on open source given freely to the community. It keeps the lights on, funds new packs, and keeps the ecosystem alive. Even a small tier means a lot. Thank you!

Sponsor on GitHub