Cardstock
Your Magic collection, priced and sorted offline, with a deck builder that starts from the cards you already own.

Why it exists
If you play Magic: The Gathering, your shelf knows more than any deck site. Most collection tools keep your cards on their server, so a deck list there can't tell which copies you own. Cardstock starts from the shelf.
What it does
- Search speaks Scryfall's query language, plus a few words for what you own. Type have>=1 t:creature and you get only the creatures you have.
- Imports never guess, so a price or a legality check never rests on a bad match. A row that doesn't match exactly one printing waits for you in a review queue, and any import can be undone.
- Open a deck and every card you're missing, or short on, is marked. The optimizer suggests swaps and shows the weights it scored them with, so you can see why.
Under the hood
Your collection never leaves your machine. Cardstock is an Electron and React app over one SQLite file on your own disk, and card data comes down once from Scryfall's public files. To check a deck's mana and curve, it goldfishes, playing sample hands against nobody in a Rust core compiled to WebAssembly.
What I learned
The deck's analysis kept growing until the most useful part, the swap suggestions, sat two screens down. Instead of trimming it, I gave analysis a space of its own, with the whole window to itself.
- Role
- Product, design, build
- Platforms
- Windows installer; macOS from source
- Stack
- Electron, React, SQLite, Rust
- Status
- Live
- Year
- 2026
- Try it
- Download for Windows โ

