
bun-packrat captures rendered web pages and source PDFs into SQLite. Web pages use Chromium MHTML as the source of record. Direct PDFs are retained byte-for-byte, deduplicated by SHA-256 and extracted with bounded PDF.js workers.
The service runs on Bun with SQLite FTS5, an in-process job queue and Playwright. It is designed for desktop browsers and Safari on iPhone and iPad.
/status;Set a password, then build and start the service:
export PACKRAT_AUTH_PASSWORD='replace-with-a-secret'
make up
Open http://localhost:3047/ and sign in as packrat.
For an unauthenticated service on a trusted network, set PACKRAT_AUTH_DISABLED=1 explicitly.
bun install
bun run typecheck
bun test
PACKRAT_AUTH_DISABLED=1 bun run start
The default database path is ./data/packrat.db.
Packrat v0.3.0 runs on Bun 1.4 and includes fresh web/PDF capture, search, offline reading, export, deletion, backup, verification, queue recovery, ArchiveBox import and original-PDF enrichment. It also:
See the v0.3.0 implementation plan. ArchiveBox hostname cutover and retirement checks are separate operational work.
See the documentation index for setup, configuration, architecture, API, CLI and operations. Requirements and delivery status are tracked in the product requirements and implementation plan.
MIT © 2026 Rui Carmo
46 commits
1 commits
TypeScript
99.0%

bun-packrat captures rendered web pages and source PDFs into SQLite. Web pages use Chromium MHTML as the source of record. Direct PDFs are retained byte-for-byte, deduplicated by SHA-256 and extracted with bounded PDF.js workers.
The service runs on Bun with SQLite FTS5, an in-process job queue and Playwright. It is designed for desktop browsers and Safari on iPhone and iPad.
/status;Set a password, then build and start the service:
export PACKRAT_AUTH_PASSWORD='replace-with-a-secret'
make up
Open http://localhost:3047/ and sign in as packrat.
For an unauthenticated service on a trusted network, set PACKRAT_AUTH_DISABLED=1 explicitly.
bun install
bun run typecheck
bun test
PACKRAT_AUTH_DISABLED=1 bun run start
The default database path is ./data/packrat.db.
Packrat v0.3.0 runs on Bun 1.4 and includes fresh web/PDF capture, search, offline reading, export, deletion, backup, verification, queue recovery, ArchiveBox import and original-PDF enrichment. It also:
See the v0.3.0 implementation plan. ArchiveBox hostname cutover and retirement checks are separate operational work.
See the documentation index for setup, configuration, architecture, API, CLI and operations. Requirements and delivery status are tracked in the product requirements and implementation plan.
MIT © 2026 Rui Carmo
46 commits
1 commits
TypeScript
99.0%