Privacy policy
What releaseszn stores about you, why, where it's kept and how to have it deleted.
Coding agents: read this page as markdown.
Draft, not yet in force. Before releaseszn opens to the public, it will be reviewed and will name who runs releaseszn, with a contact address and the province whose law applies. Last updated: October 21, 2026.
releaseszn is a showcase of software releases. We keep as little about you as we can: no ads, no third-party trackers, no selling or sharing of data. This page says exactly what we store, why, who else handles it, and how long it stays.
releaseszn is run from Canada. Its operator decides what is done with this data (under the GDPR, the “controller”). Questions and requests go through the feedback form (pick “question”).
If you just browse #
- No tracking cookies. Visitors who aren’t signed in get no cookies,
with one exception: clicking Sign in with GitHub sets a cookie
(
__Host-rszn_oauth) that holds the sign-in in progress for 10 minutes and is cleared once you’re signed in. - Visitor counts. To count unique visitors per hour, we store a one-way hash of your IP address and browser user agent, mixed with a random value that changes every day. The hashes are kept 35 days. The daily values are deleted from the database after two days (backups keep them up to 30 days, see below); once a day’s value is gone, that day’s hashes can’t be linked to anyone, or to each other across days.
- Rate limits. To stop abuse, we keep a hash of your IP address in memory for up to an hour (sign-in pages, forms, searches, the feedback form, API calls without a token, device sign-in). It is never written to disk.
- Device sign-in. When a coding agent asks for a token to be approved
on
/device, we store, with the request, the network it asked from (an IPv4 address, or the first half of an IPv6 one) and the name the agent gave itself, to show them to whoever approves. The request lasts 10 minutes and is deleted within the hour after it expired or was used. - Your settings. The theme, the palette and the feed layout you pick
are saved in your browser (
localStorage), and the feed you were scrolling is kept for 30 minutes (sessionStorage) so the back button returns to it; none of this reaches us. - No outside requests from the page. Fonts, scripts and images are served by releaseszn itself (images through our storage provider, below); your browser doesn’t contact Google, analytics services or ad networks. Every request does pass through Cloudflare, which protects and delivers the site (see Who handles your data).
- What you look at, anonymously. To decide what goes on the home feed, the page reports what happens to each release card: that it was on screen, for how long, and whether it was opened, shared or swiped. Without an account these reports carry only a daily hash of your IP address (made like the one for visitor counts, without the user agent), never the address itself, a cookie or a user agent. They’re kept 35 days; after that only hourly and daily totals per release stay.
- Visits to a release page. We count them per release and day, with
the name of the site that linked to it (from your browser’s
Referer, the host only); nothing about you.
If you sign in #
You sign in with GitHub. releaseszn asks GitHub for no extra permissions: only your public profile. We receive and store:
- your GitHub username, user id, display name and avatar (copied to our storage and shown as the author of what you publish);
- your GitHub account creation date and your numbers of public repositories and followers. The creation date and the number of public repositories weigh your votes against fake accounts (new accounts’ votes count less, or not at all); the follower count is stored with your profile but not used for that;
- a GitHub access token, encrypted, used only to read your public
repositories and their releases: when you add a project, each time
releaseszn imports or syncs your projects’ releases, to check that GitHub
still accepts your sign-in (
GET /api/v1/me), and to cancel releaseszn’s access when you delete your account. We never post to GitHub on your behalf.
We don’t receive your GitHub password or your email address.
While you’re signed in we also store:
- A session cookie (
__Host-rszn_session), only to keep you signed in. It lasts 30 days or until you sign out. We keep only a hash of it, and when it was last used. - When you joined and were last seen, from your sign-ins and the use of your sessions and tokens. The month you joined is shown on your profile.
- What you follow, save and hide: the projects, tags and authors you follow, the projects you save, and the projects you hide from your feeds. Followers and saves are shown as totals only; what you hide is never shown on the site, the project’s author included.
- A picture, if you upload one instead of your GitHub avatar. It is cropped and resized; the file you sent is deleted once that’s done, and the picture itself when you remove it or delete your account.
- Votes, with the weight your vote carried when you cast it and the name of the site you came from (the host only), so authors can see which sites their votes came from (as totals).
- Releases you’ve seen: when a release card stays on your screen for a second, or you open a release page, we record that you saw it, once per release. Votes are divided by views to rank releases fairly, so this is part of how the boards work. Your own releases are never counted.
- What you do with release cards (on screen, for how long, opened, shared, swiped, followed, saved, hidden), as for anonymous visitors but with your account, kept 35 days, to build the home feed.
- API tokens you create: we keep only a hash of each, its first
characters, the name you gave it, its scopes, when it expires and when it
was last used. A revoked or expired token is kept, unusable, until you
delete your account. When an agent sends a request with an
Idempotency-Key, our answer to it is kept 24 hours so the agent can safely retry. - Reports you file about a release, with your reason and note.
Your votes, views and what you hide are never shown on the site: pages show totals only. The people who run releaseszn can see more, as described in Who can see what.
What is public #
Your profile page (/u/{your handle}) shows your display name, handle and
avatar, the month you joined, a link to your GitHub profile, your published
projects, their total upvotes and your number of followers.
Projects, releases, changelogs, screenshots, GIFs and terminal recordings you submit are public: that’s the point of the site. Your GitHub username and avatar are shown as the author. Screenshots are copied, resized and served from our storage; the original file is deleted once processed. Converting an image or video removes its embedded metadata (camera details, location). A terminal recording is published as it was recorded, including any user names, host names or paths it shows.
What project owners see #
Owners see statistics about their own projects: how often their releases were seen, opened, shared and upvoted, how upvotes were weighted, where their cards were seen on the site, whether viewers were signed in, and which sites linked to their release pages or sent their voters. These are totals only: never who looked, voted, followed or saved. Groups smaller than 3 (a site that sent one visitor, for instance) are folded together so no one can be singled out. To count release page visits we store, per release and day, a visit count and the linking site’s name, and per project and day how many times its README badge was loaded; nothing about the visitor.
Who can see what #
- Moderators see reports with the name of who filed them, appeals with their text, and can open any project’s statistics page (the same totals as its owner) to help its owner or to look into abuse. Each look at a project’s statistics, and every moderation action, is recorded in our moderation log with the moderator’s name.
- The operator (who runs the site) can also read, for running and protecting it: the list of accounts with their GitHub details (creation date, public repositories, followers) and when each was last seen; feedback messages; and, for 35 days, the raw card activity, including which signed-in account saw, opened, voted on, saved or hid which release. This is used to tune the feed and to investigate abuse, never to show anyone what you did.
Moderation and appeals #
When a moderator hides a project or release, suspends an account or changes someone’s role, we record who did it, when, on what, and the reason given. If you appeal, we keep your appeal’s text and its outcome with your account. A suspended account can only sign in to appeal; its projects are hidden, and its data is kept until the suspension is resolved. If you want a suspended account deleted, ask us (below).
Feedback #
The feedback form stores your message, the page you came from and, only if you give them, your name and email address (so we can reply). Feedback sent through the API is stored the same way; sent with an API token, it carries your handle as the name. When a message arrives, a notification with its type, its page and its first 300 characters (never your name or email) is sent to our notification service, ntfy, so we see it quickly. Feedback is kept until we delete it, also after you delete your account; ask and we delete yours.
Who handles your data #
These providers process data for us, only to run the site:
| Provider | What it handles | Where |
|---|---|---|
| Cloudflare (proxy, CDN) | Every request to releaseszn.com passes through it, to protect the site and deliver it quickly: it sees your IP address, browser, the pages you request and what you send. It also runs a per-address rate limit. | Worldwide network |
| Cloudflare R2 (storage) | Screenshots, recordings, avatars, the files of unpublished drafts, and our encrypted database backups. An agent’s upload goes straight to it. | Cloudflare’s network |
| Hetzner (hosting) | The server that runs the site, its database and its logs, and a copy of the nightly database backups. | United States (Ashburn) |
| GitHub | Sign-in, and the reads described in If you sign in. | United States |
| ntfy (notifications) | The start of new feedback messages, as described in Feedback. | ntfy’s server |
Your data is therefore stored and processed outside Canada (and, if you are in the EU or the UK, outside it), where the authorities of those countries may be able to access it under their laws. Transfers from the EU or the UK rely on the providers’ standard contractual clauses, or on an adequacy decision where one applies.
Server logs record which kind of page was requested, when, how long it took and any errors, plus sign-ins, token changes and account changes by user id, and moderation actions with the handles involved. The app doesn’t log IP addresses, browser details or full page addresses; the web server in front of it may record the address and page of a request that failed. They’re kept 30 days.
Backups of the whole database are made every night and kept 30 days: one copy on the server, and an encrypted copy at Cloudflare R2. They contain everything above, including the daily values used for visitor hashes.
Why we use your data #
| What | Why | Legal basis (EU and UK) |
|---|---|---|
| Your account, sessions, tokens, projects and what you publish | To provide the service you signed up for | Performance of a contract (GDPR Art. 6(1)(b)) |
| Your GitHub profile data and access token | Sign-in, adding and importing your projects | Performance of a contract |
| Votes, views and their weights | Fair rankings, protection against fake accounts | Legitimate interest (Art. 6(1)(f)): rankings that can’t be gamed |
| Card activity, visitor counts, visit and badge counts | Building the home feed, owners’ statistics, knowing how the site is used | Legitimate interest: a useful feed and statistics, without tracking people |
| Rate limits, Cloudflare’s protection, server logs, the moderation log | Security and abuse prevention | Legitimate interest: keeping the site safe and working |
| Reports and appeals | Moderation | Legitimate interest: a site free of abuse; for appeals, also your right to contest a decision |
| Feedback, and your name and email if you give them | Answering you | Legitimate interest; the name and email only if you choose to give them |
| Backups | Recovering from failures | Legitimate interest |
Rankings and the home feed are computed automatically (see how ranking works); they decide what is shown where, not anything with legal or similarly significant effects on you.
How long we keep it #
| Data | Kept |
|---|---|
| Sign-in cookie in progress | 10 minutes |
| Sessions | 30 days, or until you sign out |
| Your account and GitHub details | until you delete your account |
| API tokens (revoked and expired too) | until you delete your account |
Stored API answers (Idempotency-Key) | 24 hours |
| Visitor-count hashes | 35 days |
| Visitor-count daily values | 2 days (up to 30 days in backups) |
| IP address hashes (rate limits) | up to an hour, in memory only |
| Device sign-in requests | about an hour, with the network they came from |
| Views (releases seen) | as long as your account and the release exist |
| Card activity (home feed) | 35 days; hourly and daily totals per release after that |
| Totals for owners | as long as the release or project exists (counts only) |
| Votes | as long as your account and the release exist, or until you withdraw them |
| Follows, saves, hidden projects | until you undo them or delete your account |
| Projects, releases, media | until you delete them or your account |
| Reports you filed | as long as your account and the release exist |
| Appeals | as long as your account exists |
| Moderation log | kept (who acted, on what, why, with the handles involved), without appeals |
| Feedback | until we delete it; on request |
| Server logs | 30 days |
| Backups | 30 days |
Deleting your data #
- A project: delete it from your projects or the
API (
DELETE /projects/{slug}); its releases, screenshots, votes and placements are deleted with it, files included. - An API token or session: revoke it on
/settings/tokens, or sign out. - Your account: use Delete your account at the bottom of
your settings, or
DELETE /api/v1/me?confirm={your handle}with a token made on/settings/tokens. It’s immediate. Your projects, media, avatar, votes, views, card activity, follows, saves, hidden projects, reports, appeals, tokens and sessions are deleted, and releaseszn’s access to your GitHub account is cancelled. What stays: feedback you sent (with your handle if you sent it with an API token; ask and we delete it), moderation-log entries that name you, and totals that no longer point to you. Copies in logs and backups disappear as they expire, within 30 days. - GitHub access: you can also revoke releaseszn’s access in your GitHub settings at any time.
Your rights #
You can ask what we hold about you, ask us to correct it or delete it, and, if you’re in the EU or the UK, to restrict or object to how we use it, or to receive your data in a portable form. Ask through the feedback form; we answer within 30 days. If you’re not satisfied, you can contact the Office of the Privacy Commissioner of Canada or, in the EU or the UK, the data protection authority where you live or work.
Changes #
If this policy changes, the new version is posted here with its date, and significant changes are announced on the blog.