Web archive server · written in Rust
Free & open source · AGPL-3.0indiceA reading room for web archives.
indice turns your WACZ files into an archive you can actually use: full-text search with faceted, temporal browsing; the provenance of every crawl; and in-browser replay using trusted Webrecorder tooling. One self-contained binary that scales from you on your laptop to multiuser organizational setups.
brew install edsu/indice/indiceor a prebuilt binary, Docker, or cargo →What you get
Full-text search, faceted & temporal
Hit-highlighted snippets across page text, titles, and metadata; then narrow by collection, site, date, type, or language, with a month timeline for moving through time.
Provenance up front
See how each crawl was made, including software, operator, dates, seeds, page counts.
Faithful in-browser replay
Archived pages replay client-side, exactly as captured, right in the reader's browser.
Replay is entirely Webrecorder's work (ReplayWeb.page / wabac.js).
The reading room




How it works at the command line
Index
Point indice at local or remote WACZ files. It builds an embedded full-text index and reads each crawl's provenance.
indice index --collection "Example" *.wacz
Serve
Run the single binary. It serves the read-only reading room over HTTP.
indice serve
Search & replay
Readers search with facets and a timeline, then open any page and watch it replay in their browser.
Bring your archives
Works with the archives you already have.
Browsertrix
Browse your Browsertrix org and import collections and crawls in a few clicks, or index and replay themstraight from Browsertrix's cloud storage, without downloading a thing. indice serves the very same ReplayWeb.page engine Browsertrix does, so replay is identical.
Archive-It
Pull a collection's WARCs from Archive-It over WASAPI; indice builds the WACZ, indexes it, and carries the descriptive metadata straight into a finding aid.
Cloud & remote storage
Point indice at a WACZ hosted over HTTP(S), in object storage, or behind a presigned URL, and it indexes and replays it with byte-range reads, without needing to download the entire file.
Built for range
One tool, laptop to institution.
indice ships as a single self-contained binary that uses the embedded Tantivy search engine library. So there's no Solr, Elasticsearch, or separate database to keep online. The same model that indexes a handful of your own WACZ files on a laptop should scale up towards institution sized collections. It aims to fit both ends of that range, rather than assuming the infrastructure of a large web archive.
Small & private
Index a few crawls on your laptop. Nothing is sent to a hosted service; it runs offline.
One binary, no database. WACZ files index in seconds, and search results return in milliseconds. Try it →
Scaled up
Serve an institutional reading room behind a proxy, with the same single binary.
The index is compact. Adding a million pages results in an index that is about 1.5 GB on disk. How it scales →
Curate in the workroom
Turn the reading room into a workroom.
Run in management mode or behind a SSO provider and a warm clay "red-tape" accent marks write mode: add archives, import from Browsertrix or Archive-It, and write finding aids in place. No command line needed.
Management docs →
Why “indice”?
An indice is a sign that points beyond itself. Suzanne Briet argued that a wild antelope becomes a document once it is captured, catalogued, and placed in a zoo, an
“indice concret ou symbolique, conservé ou enregistré.”Suzanne Briet, Qu'est-ce que la documentation ? (1951)
Charles Sanders Peirce used index for the same family of sign — one bound to its object by a real connection, like smoke to fire. A web capture is like that too: a trace connected to a moment of the live web. And, of course, indice builds a full-text index over the archives it serves. Three senses of the same idea.
Install
Homebrew (macOS / Linux)
brew install edsu/indice/indice
brew upgrade indice tracks new releases.
Prebuilt binary
# macOS · Linux · Windows
Download from the releases pageLatest release ↗ unpack and run; a sample archive is included.
Docker
docker run -p 8080:8080 \ -v indice-data:/data \ ghcr.io/edsu/indice:latest
Or the compose stack with automatic HTTPS.
Colophon
How indice was made — and why that's part of the record.
indice has been built in the open over the course of 2026, in small increments, with substantial help from Claude Code, Anthropic's AI coding assistant. It is the work of a single developer working alongside a language model, not the product of an institution or a large team. It is alpha software: expect rough edges, and know that careful technical review is genuinely welcome.
It stands on the web archiving community's shoulders. Replay is entirely Webrecorder's ReplayWeb.page and wabac.js; the WACZ format, Browsertrix, and Archive-It's WASAPI shape how archives come in. Its framing is borrowed from documentation theory: Suzanne Briet's antelope, Peirce's index, and from the archival tradition of the finding aid.
