# Colophon

What this is built out of, and who to thank for it.

## The canvas is Excalidraw

The drawing surface in Kromdraw is [Excalidraw](https://excalidraw.com), which is open source under the MIT licence. Kromdraw doesn't compete with it and wouldn't exist without it. The hand-drawn feel, the shape tools, the arrow binding and the file format are all theirs. My thanks to the maintainers.

What Kromdraw adds comes in two parts. Inside the editor: four tools in its toolbar that Excalidraw does not have — sticky notes that carry your name, stamps, checklists, and a hover that lights up what a shape connects to — six of its drawing behaviours patched so a note grows as you write on it, and its own name replaced throughout with Kromdraw's. Around the editor: accounts and organisations, folders, sharing and live links for people without an account, comment threads pinned to the drawing, and a server keeping it all in sync.

The export format is deliberately a superset of Excalidraw's, so a file that leaves here opens there.

## The stamps

609 of them, from Google's animated Noto emoji. They are deployed with the application rather than fetched from Google when you place one, so nobody outside the machines on the subprocessor page gets to learn which emoji you picked. A stamp's picture is derived from its codepoint as well, so stamping a board adds nothing to the board's own files.

## The type

Headings are set in **Space Grotesk** and body text in **DM Sans**. The handwriting on the canvas is **Excalifont** , which comes with Excalidraw. All three come from Kromdraw's own host. They came from Google's font CDN until 25 August 2026, and a font request is a request that tells somebody else which page you're reading.

## The rest of it

- **Ruby on Rails** for the application, with **Hotwire** for the parts of the interface that update without a page load.
- **Falcon** as the web server, since it holds each live collaborator's connection on its own fiber rather than on a thread from a pool.
- **PostgreSQL** for the database, backed up with **pgBackRest** : a base backup every night and every write archived on top of it, so the database can be restored to any second in the last month. The backups are encrypted before they leave the machine.
- **Solid Queue** , **Solid Cache** and **Solid Cable** for background jobs, caching and websockets. All three run on the same Postgres, so there is no Redis beside it.
- **Tailwind CSS** for styling, and **React** , which is what the canvas is written in.
- **lottie-web** to play the stamp animations.

The machines and the companies behind them are on [where your data lives](https://kromdraw.com/where-your-data-lives).

## Licences

The JavaScript above ships to your browser when you open a board, and several of those licences ask to travel with the code. They do. [The full third-party licence notice](https://kromdraw.com/licenses) is public, and it's generated from what is actually bundled rather than kept up by hand.
