Annotate images, maps, audio, and video. Publish your notes as a website or share a portable file.
Use Studio to import media, mark regions or moments, and write notes. Readers explore the result in Viewer. An exhibit can present several interpretations of the same source, called Readings, or guide readers through a narrative.
Your notes use W3C Web Annotation, and exhibits use IIIF Presentation 3. The published website needs no application server or database.
You can host it yourself or share a .archie.zip file. Remote images, tiles, and recordings still need a connection.
Install Node.js 24, pnpm 9 or newer, and Git LFS. Then run:
git lfs install
git clone https://github.com/micahchoo/Archie.git
cd Archie
pnpm install
sh qa/hooks/install.sh
pnpm devOpen Studio to create an exhibit, or Viewer to explore the examples. Both apps share one local address, so Viewer can read your browser's working library.
The examples are a playground. Choose Keep a copy before you edit an example you want to save. Browser saves stay in that browser. They do not make your work public.
For a launcher menu, open start.cmd on Windows, start.command on macOS, or start.sh on Linux.
Publish creates a website. Export a copy creates a file you can download and share. Storage and publishing options differ between browser and desktop Studio. See the capability matrix.
The publishing guide covers the workflow.
To put an exhibit inside an existing website, use the <archie-viewer> embed guide.
Archie is a pnpm workspace. The shared TypeScript core handles annotations, storage, and publication. Studio uses Vite and Svelte. Viewer uses Astro and Svelte. The codebase map explains each area.
pnpm typecheck
pnpm test
pnpm buildTests live beside the source. Pull requests must pass the relevant checks. Verification lists browser and package-specific gates.
| Start here | For |
|---|---|
| User guide | Your first exhibit, from import to publication |
| Capabilities | Storage, offline behavior, undo, and delivery differences |
| Desktop development | Build and run the desktop app |
| Codebase map | Find the relevant code and checks |
| Domain model | Terms and product decisions |
Licensed under GPL-3.0-only. Copyright © 2026 Micah.
