Privacy

Graflet is a free, open-source tool. We store the minimum needed to give you the graph you asked for, we measure how the site and the service are used, and — only if you opt in — we email you about new releases. This page says exactly what each of those means and how to stop any of them.

Last updated 26 July 2026.

What we store ourselves

When you sign in with GitHub, we keep one row for your account:

Two other things exist because you asked for them, and go away with them:

What is stored in your browser

Here is the whole list:

Analytics: PostHog

We use PostHog to measure how the site and the service are used. PostHog is a processor acting on our instructions, and the data it holds for us is stored in the United States. Analytics requests from this site go to a Graflet subdomain rather than to PostHog directly, so a content blocker may not stop them — the switch below does.

Before you sign in you are anonymous. Visits are counted, but no analytics cookie and no stored identifier are kept for you, and no profile is created. The single exception is the entry listed above that is written when you click sign in, and only then.

Signing in with GitHub makes you an identified person in PostHog, keyed by your github_id, carrying your GitHub login and your email. Those three fields, and nothing else: no avatar, no organisations, no repository names, no access token. From that point your site visits and your graph downloads are one timeline, which is how we can tell whether the thing we built is the thing people use.

What is recorded:

Downloads and sign-ins are recorded by our own server, not by your browser, because most downloads happen in the CLI where there is no browser at all.

Session recording

Sessions on this site may be recorded and replayed as a video: mouse movement, clicks, scrolling, and which pages you moved between. What you type is masked before the recording leaves your browser — form fields come through as blanked-out boxes, so passwords and anything else you enter are never in the video. The only typed text that reaches us is the catalog search term described above, and that arrives as its own event, not from the recording.

What we never do

One thing the CLI does that is worth knowing anyway: a library's Markdown is downloaded straight from GitHub, as a plain archive from codeload.github.com. We never see that request and it carries no account of yours, but GitHub does see your IP address and which library you asked for — exactly as if you had cloned the repository yourself.

The CLI: off unless you say yes

The first time you run a real command in a terminal, the CLI asks once whether it may send anonymous usage stats. The default is no — a bare Enter is no — and it never asks again. Your answer is stored in ~/.config/graflet/telemetry.json, and graflet telemetry on or graflet telemetry off changes it at any time.

Setting GRAFLET_TELEMETRY=0 or DO_NOT_TRACK=1 disables it entirely, whatever you answered. A run with no terminal attached — CI, a pipe, a cron job — never asks and never sends, because a prompt nobody can answer is not consent.

If you do say yes, four events reach PostHog and nothing else:

Never sent: file paths, file names, your command-line arguments, your hostname, your username, your environment variables, or anything inside what you downloaded. Your IP address is not stored either — the CLI tells PostHog to discard it on every event, which also means no location is derived from it. Before you sign in the events carry a random id generated on your machine and nothing else; signing in attaches them to your github_id, and graflet logout discards both, so the next person to use that machine starts fresh.

The three kinds of email

Withdraw consent or unsubscribe

Every product email carries a one-click unsubscribe link and a postal address; clicking it flips your consent to no and stops all product email immediately. You can also stop doc notifications from the CLI at any time.

That consent covers email only. Analytics is a separate thing with its own switch — answering the marketing question either way neither turns analytics on nor off.

Turn analytics off

This switch stops measurement of this site in this browser, right away and on every later visit. It works by remembering one preference on your device, written only once you have asked for it.

Checking this browser…

It covers the website. Sign-ins and graph downloads are recorded by our server against your account, so if you want those stopped too, delete your account and use the tool signed out. The CLI has its own switch — graflet telemetry off, described above.

Delete your data

The button below deletes your account. You sign in with GitHub first — that is the only way we can tell it is really you, since signing in on this site never gives your browser a password or a token — and then you confirm here. Nothing is deleted until you confirm.

It removes, in one go:

If either half fails, the whole thing fails and tells you so — we would rather you retry than be told you were erased when half of you was still there. Prefer to ask a human, or want a copy of what we hold first? Email graflet@rnui.dev or open an issue in the repository.

Delete my account

You'll sign in with GitHub first, so we know it's you — then you confirm here. Nothing is deleted until you do.

The code

Everything here is verifiable — the storage, the consent handling and every analytics call are open source. Read it in the repository.