Data & Privacy

Local-first isn't a tagline.
It's the architecture.

DeckLogic was built so that your games, decks, and logs never need to leave your machine. During a live match, DeckLogic describes the game but never chooses your play — a boundary enforced at the Rust dispatch layer and stated on The Live Boundary.

What stays local

Your Arena log

Parsed in-process, on your PC. The log is read passively and never uploaded anywhere.

Your game history

Every match, deck, and draft lives in a local SQLite database inside your user profile. It's yours.

ML inference

The win-expectancy model (shrunk to 3MB) runs on-device via ONNX Runtime. No cloud scoring, no per-game API calls.

The announcer

Text-to-speech runs locally, and the optional LLM commentary only ever talks to a server on localhost.

What the app fetches — and why

SourceWhatWhen
unrealities-media.github.io/DeckLogic Daily Limited datasets, synergy and collation artifacts — served from this very site Daily / on demand
Scryfall One-time bulk card catalog and card images First run, then cached
GitHub releases App update check On launch
17Lands (optional) Read-only account link for deck/run harmonization Only if you link an account

Share links: the only thing that ever leaves

And even then, it doesn't come to us.

You can share a deck, a draft run, or a match summary as a link. The entire payload is encoded into the part of the URL after the #, which browsers never send to a server. So the link is not a pointer to something we stored — it is the data, and DeckLogic keeps no copy. Nothing is uploaded when you create one, and no account is involved.

Player names are removed by default. You can choose stable handles instead (the same person always becomes the same handle, so several shared matches stay comparable without a username), or real names — but only by explicitly picking that option each time.

The trade-off is the honest one: because the link carries everything, anyone who has it can read it, and it cannot be revoked. The app tells you that before you copy it.

What we don't do

No telemetry. No analytics. No crash uploaders. No account system. No data sale. There is no DeckLogic server to send anything to — which is exactly why share links had to work without one.

And during a live match, no advice: DeckLogic describes the game, but never chooses your play. That boundary is enumerated field by field on The Live Boundary.

Standing on great shoulders.

DeckLogic exists because a few projects publish extraordinary public data, and it tries to be a good citizen of each.

17Lands — Limited ratings and draft telemetry are built from 17Lands' public aggregate data, rebuilt daily by an automated pipeline that caches aggressively and never touches user machines. If DeckLogic helps your drafts, support 17Lands on Patreon.

Scryfall — card data and imagery come from Scryfall's bulk data, downloaded once and mirrored locally — no per-card crawling, in line with their guidelines.

MTGJSON — structural pack blueprints for practice drafts are built on MTGJSON's open data.

Wizards of the Coast — DeckLogic is unofficial Fan Content under the Fan Content Policy; the full notice is in the footer of every page.