Compact, fast, low-maintenance digital repository.
Find a file
2026-01-25 19:55:47 -05:00
core_schema Remove "work" example type. 2026-01-25 12:06:31 -05:00
doc/user_guide Update documentation. 2026-01-25 12:06:55 -05:00
docker Force add basic docker volumes. 2026-01-11 18:33:16 -05:00
examples A few fixes & improvements: 2026-01-25 19:03:52 -05:00
ext WIP docker setup. 2026-01-08 08:55:51 -05:00
rockspecs Prepare for b6 release. 2026-01-25 19:55:47 -05:00
src Do not freak out if a schema config file is not found. 2026-01-25 19:54:48 -05:00
templates A few fixes & improvements: 2026-01-25 19:03:52 -05:00
test Align content model names in tests; pass all tests 2026-01-25 19:55:25 -05:00
.busted Set up default testing options. 2025-12-14 10:39:34 -05:00
.gitignore v1.0b5: 2026-01-11 18:29:15 -05:00
.gitmodules WIP docker setup. 2026-01-08 08:55:51 -05:00
CODE_OF_CONDUCT Parole parole parole. 2025-07-16 21:27:24 -04:00
LICENSE Parole parole parole. 2025-07-16 21:27:24 -04:00
pocket_archive-scm-1.rockspec WIP Remove proxy schema; separate tree code into its own module. 2026-01-14 21:29:36 -05:00
README.md v1.0b5: 2026-01-11 18:29:15 -05:00
run_tests.lua Add content model and remove tests; fix remove function. 2025-11-11 22:24:30 -05:00
scratch.lua Rough content model doc generator. 2025-09-30 22:20:27 -04:00

Pocket Archive

The idea

Stick it in your pocket and carry it around. Install it on a cloud server. Install it on a Raspberry Pi. Browse it offline. Browse it online. Duplicate it, share it, harvest it and aggregate it. Feed it non-GMO spreadsheets regularly and it will thrive.

A more sensical description

Pocket Archive is a digital archival system and static site generator for small- to medium-(?) sized archives. It is designed to function in environments with unreliable connectivity and requires very low technical and human resources to set up, run, and use.

Pocket Archive fulfills the following business functions:

  • Storage and management of files and metadata-only resources
  • Management of descriptive, administrative, and technical metadata
  • Static site generation (presentation)

Some interesting features it currently provides:

  • Bulk content creation and updates are done by pushing spreadsheets (CSV) and data packages to a drop box
  • Highly customizable content model with user-definable relationships between resources
  • Able to run a presentation site and search form a thumb drive, without an Internet connection
  • Fully implementing Linked Data under the hood, hiding its ugly parts from the end user

In spite of its design simplicity, Pocket Archive strives to be flexible. It is based on Volksdata, a very compact Linked Data store and manipulation library. There is no restriction to the types and schema of metadata allowed, or the file types supported. A file-based configuration allows to set up content types and validation rules, or to have (almost) no rules at all.

Pocket Archive is designed to reinvent as little as possible and to use standard tools found in open source operating systems to provide a full management and preservation environment. It creates and updates resources using spreadsheets instead of running a web user interface; it writes all contents to disk and metadata in an embedded database that can be archived, replicated, backed up, and restored with reliable UNIX tools such as tar, rsync, etc.

Documentation

The full user documentation sources are in the user guide folder and published at https://pkar-doc.bmll.cc

API documentation is in progress.