tagdrop
Decode data URIs in QR codes
Version: 2.6.2
Added: 28-08-2015
Updated: 10-08-2026
Added: 28-08-2015
Updated: 10-08-2026
TagDrop turns small files — text, HTML pages, images, audio, SVGs — into self-contained QR codes that work completely offline. Print one on a sticker or sheet of paper and leave it somewhere; anyone with the TagDrop app (or any QR scanner that follows tagdrop: links) can scan it and view the content immediately, with no internet connection, server, or account required.
Think of it as a digital geocache: instead of a logbook in a box, the "cache" is the QR code itself.
What you can do with it
How it works
Every code carries a tagdrop: URI — a QDEF container of CBOR Records, Base41-encoded so it packs efficiently into a QR code's alphanumeric mode. Content can optionally be DEFLATE-compressed and split across multiple codes with parity recovery. IDs are content-addressed (SHA-256 based), so identical content always gets the same ID regardless of who created it. The full wire-format spec is browsable in-app, no internet connection required.
Status
V2.5 — QDEF-based wire container encoding with content split into codes plus optional parity recovery, post-quantum (ML-DSA-44) content signing with trust-on-first-use verification, paper manifests with multi-file directories and relative-link navigation, geographic trails via "related" hints, ad-hoc collections, reply threading, an in-app scanner with a live scan board, NFC tag read/write, search and #hashtag filtering, full backup/restore, a Map tab for located finds, and remote drop-source feeds that pre-populate the map with community drops before you scan them.
Think of it as a digital geocache: instead of a logbook in a box, the "cache" is the QR code itself.
What you can do with it
- Drop a single page — encode text, an HTML page, an SVG image, or JSON into one QR code, either in-app (Create Cache) or with the web generator.
- Drop a whole "paper" — a printable sheet with a directory QR code (a paper manifest) plus one QR per file, built in-app (Create Paper) or with the web generator. Pages can link to each other with ordinary relative links, so a small static site survives being printed and scanned back in.
- Spread large content across multiple codes — split a payload too big for one QR into multiple sector codes placed along a trail. The app collects sectors in any order, reassembles and verifies them, and can recover a single missing sector from an optional parity code.
- Build trails, collections, and replies — link papers together with location hints, tag a loose set of stickers with a shared collection so they group into one card on the home screen and map, or mark a code as a reply to another to thread a conversation across drops.
- Browse offline — scanned pages render in an in-app viewer, with search and #hashtag filtering, and a hex/CBOR inspector for the curious. The Collections, History, and Map tabs let you revisit, locate, and manage everything you've found, and a single file can back up or restore it all.
- Tap instead of scan — write any TagDrop code to a blank or rewritable NFC tag, then read it back with a tap instead of the camera.
- Sign your drops — post-quantum (ML-DSA-44) Verified Authorship signing lets anyone who scans your codes recognise them as genuinely yours after the first scan (trust-on-first-use), with a ✅/⚠️/ badge shown on every signed item. Back up your signing identity to a passphrase-protected file to keep the same recognisable signer across devices.
How it works
Every code carries a tagdrop: URI — a QDEF container of CBOR Records, Base41-encoded so it packs efficiently into a QR code's alphanumeric mode. Content can optionally be DEFLATE-compressed and split across multiple codes with parity recovery. IDs are content-addressed (SHA-256 based), so identical content always gets the same ID regardless of who created it. The full wire-format spec is browsable in-app, no internet connection required.
Status
V2.5 — QDEF-based wire container encoding with content split into codes plus optional parity recovery, post-quantum (ML-DSA-44) content signing with trust-on-first-use verification, paper manifests with multi-file directories and relative-link navigation, geographic trails via "related" hints, ad-hoc collections, reply threading, an in-app scanner with a live scan board, NFC tag read/write, search and #hashtag filtering, full backup/restore, a Map tab for located finds, and remote drop-source feeds that pre-populate the map with community drops before you scan them.