Privacy Policy
anacraft runs entirely on your own computer. There is no anacraft server. Your Google Analytics data goes straight from Google's API to your terminal — it is never routed through, copied to, or stored on any machine the maintainers control. We cannot see your analytics, and we collect nothing about you.
01What anacraft accesses
anacraft asks Google for one read-only scope,
https://www.googleapis.com/auth/analytics.readonly. With it the program reads the same
aggregate figures the GA4 web interface shows you — visitors, sessions, page views and events, broken
down by things like date, page, country, device and traffic source — plus the list of properties your
account can open.
Being read-only, anacraft cannot alter your Analytics configuration or data. It does not request your name, email, profile, or any other Google service, so it never learns who you are. Requests go directly from your machine to Google's Analytics APIs and to nothing else.
02What is stored on your computer
Two files, plus one you may never create. Your Google tokens live in
~/.anacraft/token.json, written 0600 on macOS and Linux so only your user
account can read it. Your chosen properties and their display settings live in
~/.config/anacraft/config.toml, which holds no credentials. If you supply your own OAuth
client, it goes in ~/.anacraft/client.json.
The split is deliberate: ~/.config is a directory people commonly sync to dotfile
repositories, so nothing secret is kept there.
That is the whole list. Analytics figures are never written to disk; they live in memory while the dashboard is open and are gone when you quit.
03How that data is protected
In transit. Every request anacraft makes — the authorization exchange, token refreshes, and
each Analytics query — goes over HTTPS with TLS, using the rustls stack compiled into the
binary. There is no plaintext transport and no option to disable verification.
At rest. The OAuth refresh token is the only sensitive value anacraft keeps. It is written to
~/.anacraft/token.json with permissions 0600 on macOS and Linux, so no other
user account on the machine can read it. On Windows it is written into your user profile and protected
by that account's own file permissions. Your Analytics figures are never written to disk at all — they
exist in memory while the dashboard is open and are gone when you quit, so there is no cache or export
for anyone to recover.
During sign-in. The login uses the OAuth 2.0 authorization code flow with
PKCE, deriving an S256
challenge from a single-use random verifier, so an intercepted authorization code cannot be redeemed
by anyone else. Google redirects to a loopback address on 127.0.0.1 using a port the
operating system assigns for that one login, and the reply is checked against a random
state value — a mismatch aborts the login rather than proceeding.
By scope. anacraft requests one scope,
https://www.googleapis.com/auth/analytics.readonly. Being read-only, the token it holds
cannot modify or delete anything in your Analytics account even if it were misused.
By not transmitting it. The strongest protection here is structural: there is no anacraft server to breach, no account to compromise, and no copy of your data anywhere but your own machine. Nothing is sent to the maintainers or to any third party.
Revocation. You can withdraw access at any time — anacraft logout revokes the
token with Google and deletes it from disk, and
myaccount.google.com/permissions revokes it from
Google's side independently of this program.
Auditable. anacraft is open source under Apache 2.0. The entire authentication path is in
src/auth.rs, so
none of the above has to be taken on trust.
04What anacraft does not do
- No telemetry, usage analytics, or crash reporting.
- No phoning home — no version pings, no install counters.
- No selling, sharing, or transferring your data, ever.
- No account or profile with us. We hold no record that you exist.
That list describes the program you install. The website you are reading it on is covered separately in section 08.
05Google API Services Limited Use
anacraft's use of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements. Data obtained through the Google Analytics APIs is used only to draw the dashboard on your own screen, in response to a command you ran. It is not transmitted to the maintainers or any third party, not used for advertising, and not used to train machine-learning models.
06The OAuth client in official builds
Release binaries have an OAuth client compiled in so that login works without you registering a Google Cloud project first. It only tells Google which application is asking — the resulting token is issued to your machine and used from your machine, so it gives the maintainers no access to anything.
Because that client is shared across official builds, so are Google's per-project API quotas. You can
supply your own instead, via environment variables or ~/.anacraft/client.json; see the
README for details.
07Revoking access and deleting data
anacraft logout— revokes the token with Google and deletes it from disk.- Delete
~/.anacraft/— removes everything anacraft keeps. - myaccount.google.com/permissions — withdraw access from Google's side at any time.
Since we never receive your data, there is nothing for us to delete on your behalf.
08The website, changes, and contact
The program collects nothing. The website does, if you let it. Everything above describes the anacraft binary, which has no telemetry and never contacts a server of ours. This section is about anacraft.dev, which is a separate thing.
anacraft.dev is a static site on GitHub Pages. It uses Google Analytics to count visits, configured
with client_storage: 'none' so that it writes no cookies and stores nothing on your
device at all — which is why you were not asked to dismiss a consent banner to read this. The
trade-off is ours, not yours: every visit reaches us as a new visitor, and we cannot tell whether you
have been here before. Google receives the page you viewed and derives an approximate location from
your IP address, which GA4 does not log or retain — see Google's
privacy policy. GitHub may log request metadata such as IP addresses, and two typefaces are fetched
from Google Fonts.
If this policy changes materially, the date above changes with it and the revision stays visible in the site's Git history. anacraft is published by Smartloop Inc. Questions about this policy: [email protected].