Privacy Policy

Last updated: June 2026

Capiu is a free, ad-free memory-training project. This policy covers both the public site at capiu.org and the signed-in app at app.capiu.org. We collect as little data as possible and store nothing we don't need.

Public site — capiu.org

The static landing page, the blog, and the read-only Major System and focus-timer tools at capiu.org/major / capiu.org/focus run entirely in your browser. No account, no cookies set by us, no personal data leaves your device.

We use Cloudflare Web Analytics to see which pages are visited. It is cookie-free, does not track you across sites, and is designed to be privacy-first — Cloudflare aggregates page-load events at the edge without building per-visitor profiles.

The site is served by Cloudflare Pages. Cloudflare may log your IP address for security and abuse-prevention purposes. See Cloudflare's privacy policy.

Signed-in app — app.capiu.org

The app at app.capiu.org requires sign-in. The sections below explain what we collect when you create an account and use the app's features.

What we collect

What we do not collect

Encrypted palace sync (optional)

Palace sync is off by default. If you turn it on in your account settings (Settings → Security → Encrypted sync), you choose a passphrase, and from then on a copy of your palaces is stored on our servers so it can sync across your devices.

That copy is end-to-end encrypted (AES-256-GCM). The encryption key is derived from your passphrase — and from a one-time recovery code we show you at setup — and never leaves your device. We, Supabase, and anyone with administrative access to the database store only the ciphertext and can never decrypt your palace contents (this is "zero-knowledge" encryption). The encrypted blob is hosted on Supabase in the EU under the same per-user access rules as the rest of your data.

What the server can see is limited technical metadata: when you last synced, a counter that increases each time you sync (roughly, how often you edit), and — derivable from the stored ciphertext — its approximate size; never its contents.

Important: because only you hold the key, if you lose both your passphrase and your recovery code, the encrypted data is permanently unrecoverable — by design. Deleting your account removes the encrypted blob along with the rest of your account data.

Maps and Street View

The palace map is rendered with OpenFreeMap map tiles, and place search uses Nominatim (part of OpenStreetMap). When the map loads or you search for a place, your IP address (and your search query) reach those services so they can return the tiles and results.

A palace can also carry an optional Google Street View scene. To protect your privacy this embed does not load automatically — nothing is sent to Google until you click "Load Street View", or until you tick the "load scenes automatically" option yourself. When it does load, the scene's coordinates, your IP address, and your language are transmitted to Google; we restrict the referrer we send to our bare origin (app.capiu.org), so Google does not learn which palace you are viewing. This processing is based on your consent (Art. 6 (1) (a) GDPR), which you can withhold or withdraw at any time by not loading the scene or unticking the option. Loading the embed transfers data to Google LLC in the United States, which participates in the EU-US Data Privacy Framework.

Who processes your data

Cookies and local storage

The signed-in app stores a Supabase session token in your browser's local storage so you don't have to sign in on every visit. It also stores your palaces, pegs, and TanStack Query cache in IndexedDB (strictly on your device). These are technically necessary for the app to work and do not require a consent banner under GDPR. We do not set any third-party cookies and we do not run advertising cookies.

A few feature preferences are also kept on your device only: whether to "load scenes automatically" (the Street View opt-in described above), and — if you use encrypted palace sync and choose to "stay unlocked on this device" — a device key that wraps your decryption key locally. Neither is sent to us.

Legal basis

Processing your email and sign-in data: contract performance (Art. 6 (1) (b) GDPR) — necessary to provide the account. Pseudonymized error reports and security/abuse prevention: legitimate interest (Art. 6 (1) (f) GDPR) — running a stable, abuse-free service. Cookie-free analytics on the public site: legitimate interest. Storing the end-to-end-encrypted palace-sync blob: contract performance (Art. 6 (1) (b) GDPR) — you opt in explicitly to the feature. Loading a Google Street View scene: consent (Art. 6 (1) (a) GDPR).

Retention

Your account data is kept until you delete your account from the in-app settings page (which hard-deletes the row and cascades all your catalog activity). Sentry error reports are kept for 90 days by default. Server logs are kept for 14 days.

Your rights

Under GDPR you have the right to access, correct, export, and delete your data. The in-app Delete account button immediately removes all account data from our primary database. Sentry error reports and server logs that contain only your random user ID then expire on the retention schedule above (90 / 14 days). For access or export requests, email contact@capiu.org — we will reply within the 30-day deadline set by GDPR Art. 12 (3). You also have the right to lodge a complaint with your national data-protection authority.

Changes to this policy

We may update this policy as the app evolves. The date at the top is always the most recent change. Material changes will be announced inside the app.

Contact

Questions or requests: contact@capiu.org. See also our imprint.