Apps
Make the identifier that lets you into a service without a phone number or a big-platform sign-in.
A PCOC, a self-issued identifier, carries a cost in memory and time, so bots can't make them for free.
These apps make one on your own device. Pick your platform.
Coming soon: an Amethyst integration for Nostr, and a Telegram app.
Point a coding agent at the specification. This is not a download, and it is not the Linux or Android demonstrator. The page is a short brief you can hand to an agent to wire a producer, a verifier, or an admission gate.
PCOC Hike 0.1.7 · built 24 Oct 2026 · Source at this version
Install it
Paste each step into a terminal, in order.
Tested on Debian 13, 21 Oct 2026.
1. Install Flatpak
Fedora and Linux Mint come with Flatpak: skip this step.
sudo apt update
sudo apt install -y flatpak2. Add Flathub
The app gets its GNOME runtime from Flathub.
flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo3. Download the app
curl -fLO https://pub-54bc1adbb1da45aba1b293480fe7105e.r2.dev/demonstrations/pcoc-desktop-v0.1.7.flatpak4. Check the download
The number must match exactly. If it does not, delete the download and try again.
sha256sum pcoc-desktop-v0.1.7.flatpakExpected output
ae1bd64f7ca1a6c5ee066d0256420de66b9a17c977f9f2e880a2bb13595ba5e4 pcoc-desktop-v0.1.7.flatpak5. Install it
This also downloads the GNOME 50 runtime if you do not have it yet, about 1.1 GB.
flatpak install --user -y ./pcoc-desktop-v0.1.7.flatpak6. Check the result
flatpak info --user app.pcoc.HikeExpected output (from the second line)
ID: app.pcoc.Hike
Ref: app/app.pcoc.Hike/x86_64/master
Arch: x86_64
Branch: master
Version: 0.1.7
…7. Run it
It also appears in your applications menu (on some desktops, after you log out and back in). Then follow the desktop guide.
flatpak run --user app.pcoc.Hike
Watch the video in the desktop guide
Release details
- Version
- 0.1.7, tag
desktop-v0.1.7 - Size
- 1.6 MB (1684464 bytes)
- Commit
d4cc86f306a6ab30ba21c8603d5e397216d7daf8- sha256
ae1bd64f7ca1a6c5ee066d0256420de66b9a17c977f9f2e880a2bb13595ba5e4- Rebuild
- From the tag, with
apps/desktop/flatpak/build-bundle.sh. The rebuild is not bit-for-bit identical across machines; the sha256 checks the published download.
Or build it from source
Tested on Debian 13, 21 Oct 2026.
1. Install the system packages
sudo apt update
sudo apt install -y build-essential pkg-config libgtk-4-dev libadwaita-1-dev git curl2. Install rustup
The app folder pins Rust 1.99.0, and rustup installs it on the next cargo command.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain none
. "$HOME/.cargo/env"3. Get the code
git clone https://github.com/groundinglab/pcoc.git
cd pcoc/apps/desktop4. Build
cargo build --release --locked5. Check the result
cargo test --locked -p pcoc-hike-coreExpected output (each test group ends like this)
test result: ok. …6. Run it
cargo run --release --locked -p pcoc-hikeAndroid app 3.5.50 · built 25 Oct 2026 · Commit 5a1d4f5f3
The phone build is a groundinglab fork of Primal, the open-source Nostr client: a demo build, not an official Primal release.
It is a debug build, so it is large. Side-load only, not the Play Store. This build uses SDK 2.3.1.
Reset flush link and previous signings. Test build ahead of primal-pcoc #54, which is not merged.
Install it
Download checksum verified 25 Oct 2026.
1. On the phone: download and install
Open this page on the phone and tap the Primal button above. When the download finishes, open it, and allow your browser to install apps if Android asks. It is side-load only, not on the Play Store.
2. Or, on a computer: download it
365 MB.
curl -fLO https://pub-54bc1adbb1da45aba1b293480fe7105e.r2.dev/demonstrations/primal-pcoc-aosp-debug.apk3. Check the download
sha256sum primal-pcoc-aosp-debug.apkExpected output
6fd62c90ca78b3905d401b63fbe48dc3dcaf81ef97e3131b03dc7a664abbe69c primal-pcoc-aosp-debug.apk4. Install it over USB
Turn on USB debugging on the phone beforehand: Settings, About phone, tap Build number seven times, then Developer options. This step needs a phone attached, so it was not tested here.
sudo apt install -y adb
adb install primal-pcoc-aosp-debug.apkExpected output (last line)
SuccessThen follow the phone guide.
Watch the video in the phone guide
Release details
- Version
- 3.5.50 (versionCode 2747), commit
5a1d4f5f3 - Size
- 365 MB (382598590 bytes)
- Built
- Commit
5a1d4f5f3c06cd92cfc1ae758418a47122853d3a- sha256
6fd62c90ca78b3905d401b63fbe48dc3dcaf81ef97e3131b03dc7a664abbe69c- Signing
- Debug key
- Changes
- Reset flush link and previous signings. Test sideload ahead of primal-pcoc #54 (not merged).
- Rebuild
- From commit
5a1d4f5f3, following the primal-pcoc README (./gradlew :app:assembleAospDebug). The rebuild is not bit-for-bit identical; the sha256 checks the published download.
Build it into your own app
Both apps are demonstrations of the PCOC SDK. To put the same work in your own app:
- SDK setup. Make PCOCs from the language quickstarts.
- Admission gate. Accept a PCOC at sign-in.
- Agent brief. Hand the wiring to a coding agent. The specification stays the contract.