norsehorse-dev/BurnPonyAndroid
norsehorse-dev/BurnPonyAndroid has 29 GitHub stars and 0 forks. Star changes are not measured yet. Last checked 2026-11-13 04:07 UTC. Last push 2026-11-03.
Self-destructing encrypted notes for Android — the recipient just opens a link. Client-side AES-256-GCM, publicly specified wire format, no accounts.
Measured star growth
- in 24h
- Collecting history
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalBurnPony for Android
Self-destructing encrypted notes where the recipient installs nothing. You write a note, set self-destruct rules, and share one link; it decrypts client-side in any browser. The server stores only ciphertext it cannot read — the decryption key travels in the URL fragment, which browsers never transmit. No accounts anywhere.
This repository is the Android sender app (Kotlin, Jetpack Compose). The recipient side is the web viewer.
The protocol, server, viewer, and test vectors live elsewhere
norsehorse-dev/BurnPonyiOS
is canonical for the wire-format specification (PROTOCOL.md, also live at
burnpony.app/protocol), the PHP server, the
single-file viewer, and the shared cross-implementation test vectors. This
repository references them and does not fork them. The shared/ directory
carries a copy of the canonical vectors so :core:test is self-contained;
the files in BurnPonyiOS are ground truth.
Modules and flavors
core/— the BurnPony v1 crypto core: pure Kotlin/JVM, zero third-party dependencies (JCA primitives, hand-rolled RFC 5869 HKDF, deterministic payload serializer, strict base64). Byte-compatible with the CryptoKit and WebCrypto implementations, proven by the vector suite.app/— the Compose app. Two flavors on thedistdimension:standard— Play distribution; adds firebase-messaging for read-receipt push. Firebase is initialized manually; the google-services Gradle plugin is not applied.foss— F-Droid distribution; no Google artifacts anywhere in the dependency graph (./gradlew :app:dependencies --configuration fossReleaseRuntimeClasspathshows none). Read receipts arrive via status polling.
Building
JDK 17+, Android SDK 36. The Gradle wrapper pins everything else.
./gradlew :core:test # crypto gate: 100% vector parity
./gradlew :app:assembleFossDebug
./gradlew :app:assembleStandardDebug
Release builds read signing material from app/keystore.properties
(untracked); without it the release output is unsigned, which is what
F-Droid's verification build expects.
Trust model, briefly
Every note gets a per-note management token, issued at creation, capable of burn/status/expiry-change but never decryption, and stored server-side only as a SHA-256 hash. The optional note label never leaves the device. The full framing is on the protocol page.
License
Apache-2.0. BurnPony is part of the pony family of privacy tools: encryption you can inspect instead of taking a developer's word for it.
Explore related projects
awesome-selfhosted/awesome-selfhosted
A list of Free Software network services and web applications which can be hosted on your own servers
336,615 starsimmich-app/immich
High performance self-hosted photo and video management solution.
119,024 starsStirling-Tools/Stirling-PDF
#1 PDF Application on GitHub that lets you edit PDFs on any device anywhere
96,434 starslouislam/uptime-kuma
A fancy self-hosted monitoring tool
93,575 stars