API Reference
Peoples Open Codex for Android

One card format.
Eight apps.
Zero cloud.

POCA is an open-source suite of offline-first Android apps built for Indigenous digital sovereignty. Every story, calendar, lesson, and map lives on a community-curated PAC, a removable microSD card, and is served to every app through a single ContentProvider. Nothing leaves the device.

Apache 2.0 Offline-first Community-sovereign org.poca.*
8core apps
2provider authorities
12URI endpoints
0cloud services

The suite

Eight apps, one codex

Each app owns a content domain on the PAC and reads only its own cards. The names come from Nahuatl; the content comes from the community that curates the card, made to be picked up by elders and kids alike. Every page below documents the app’s PAC contract in detail.

Amoxtli “book”

Stories, creation myths, and oral traditions. An ePub and audiobook reader whose Codex format scrolls horizontally, the way pre-Columbian codices unfold.

codexbookaudiobook

Cualli “good, well-being”

Wellness and safety hub. Community resource cards, a community-chosen trusted responder line, and emergency tooling that never leaves the device.

resourceresponder

Cuilo “to paint, to write” In development

Creative studio built on Krita. Full painting and drawing tools; PAC content integration is planned but not wired yet.

no PAC surface yet

Metztli “moon”

Aztec/Mexica calendar. Day signs, trecenas, and lunar phases. A community can replace the entire cycle system through one PAC config block.

app_config: calendar

Ollin “movement”

Ceremonies, healing practices, and cultural articles with optional Mukurtu integration that honors cultural protocols and TK Labels.

discoveryarticleartifact

Tlalli “earth”

Land and nature field guide. Plants, animals, minerals, and places, plus offline trails and map tiles. Ships without the INTERNET permission.

plantanimalminerallocation

Tlato “word, speech” In development

Language learning and dictionary. Offline vocabulary, pronunciation audio, and lessons curated by community language-preservation departments.

wordphraselesson

Teo “sacred”

Deities, spiritual entities, and mythology. A native GLES 3 experience; content is community-provided and community-gated.

engine preview

Cristo Unpublished

Biblical content and Christian traditions for Latin American communities where Indigenous practice and Catholicism are syncretized.

guidereadsaved

Nahual “shapeshifter” Planned

Spirit animals and primal archetypes. A consent-first, experimental journaling and grounding companion.

concept

Why offline

A single card can carry tens of thousands of books, hours of elders’ voices, and an entire language. When the card comes home, the tablet speaks it, whether or not the internet ever arrives.

The plumbing

Three utilities carry the suite

PAC Reader

org.poca.pac

The content bridge. Reads the PAC microSD card, parses its index, and re-serves everything through one read-only ContentProvider. Full provider reference, cursor schemas, and card formats.

Xochi

org.poca.xochi

Offline digital assistant. An on-device model that answers only from the PAC through a typed tool contract. No cloud, no eavesdropping.

Gateway

org.poca.launcher

The home screen. A POCA fork of Launcher3 whose culture wheel is patterned by the PAC identity provider, so each community’s tablet greets them as their own.

The content bridge

How PAC parses a card

A PAC is a community-curated microSD card. PAC Reader turns it into a queryable, permission-guarded content service; client apps never touch the filesystem directly. Swap the card, and the same tablet becomes a different library.

Mount

The card is inserted. PAC Reader detects the mount, verifies the PAC fingerprint files, and locates the PAC root.

Parse

It parses poca_config.json and poca_cards_index.json, plus per-app app_config.json and identity/wheel.json, into a typed card index.

Serve

Everything is exposed through one read-only ContentProvider on two authorities, guarded by a signature-level permission.

Render

Apps query their own cards, resolve media by relative path against the PAC root, and jump between apps with poca:// deep links.

Ready to build? The full provider reference lives at /pac/: every endpoint’s cursor schema, the on-card file formats, provisioning, change notifications, and the community-run OTA protocol.