Skip to content
habitat

Run it yourself

The kits and the census tools: today, on any machine

  • A kit needs Python 3.9 or later and numpy. Check the archive's SHA-256 against the case page first, unpack, check the manifest, run python3 verify.py --require v3_fsum, compare the digest. Nothing else.
  • The census tools need Python 3; signing needs the cryptography package; the stream needs numpy and the floor module beside it. They read your logs where they are and write into the folder you name.

The site

Static HTML. Before every deploy, about fifteen checks confirm that the pages, the kits, the receipts and the anchored files agree, and the build fails if they do not. The checks are not public today.

Desk

A Vite and React application, built to a static bundle and placed under the site's /desk/ path. It talks to /api/reading/*, reads the anchor files and keys from the site for the Published check, and posts the membership request to the site's form. Building it needs Node and the repository; the built bundle is what the site serves.

The reading server

FastAPI, Python 3.11, and the four text stores; it can use Redis for a copy of room data. It runs on Fly with a persistent data volume for rooms, members and Gem-Spaces. The whole test suite, with the stores in place, is the gate before any deploy.

What you cannot run today without our server

The four text stores are not published, so Words’ reads need our server. Record needs nothing. The kits need nothing. The census tools need the repository, which is private until its license is named.

Where the code is

The site, the receipts, the anchors, the keys and the kits are public; the source of Desk and the reading server is not published. What is public, and what is licensed.