Marketing site for privacytracker — the app that watches iOS App Store privacy labels and tells you when one quietly changes.
Static HTML. No framework, no build step. Deploy by pointing any static host at the repository root.
Hostname: privacytracker.privacykey.org (DNS not configured yet)
.
├── index.html Hero, features, the five-minute setup walkthrough, install paths
├── about.html What privacykey is
├── privacy.html Data posture — what's collected (nothing), every outbound
│ endpoint, the opt-in surfaces, how to go fully offline
├── legal.html Apache-2.0 plus bundled third-party libraries by SPDX licence
├── llms.txt Preferred entry point for cooperating AI agents
├── robots.txt Search engines welcome; training crawlers blocked
├── security.txt RFC 9116, mirrored under /.well-known/
├── sitemap.xml
├── site.webmanifest
├── assets/ CSS, fonts, icons, social images
└── scripts/
└── update-versions.py Syncs the dependency version pills in legal.html
Two automations guard the pages that make factual claims:
.github/workflows/check-privacy-drift.ymlwatches privacytracker's own privacy-policy source. When it changes, the workflow opens an issue soprivacy.htmlgets reviewed rather than silently drifting. Baseline hashes live in.github/upstream-hashes/..github/workflows/bump-oss-versions.ymlkeeps the third-party version pills inlegal.htmlcurrent, viascripts/update-versions.py.
If you change privacy.html in response to an upstream change, record the new
baseline hash in the same commit.
- privacytracker and privacykey are one word, all lowercase, everywhere — including at the start of a sentence.
- Feature claims must match the shipped product. When in doubt, check privacytracker's README or the docs site rather than the last version of this page.
llms.txtis a factual summary for agents, not marketing copy. Keep its feature list in step with the product.
- privacytracker — the app
- docs-privacytracker — the documentation site
- website-privacykey — the organisation site