DeckPub
A multi-game card database and deckbuilder for Star Wars CCG, Star Wars: Unlimited, and Magic: The Gathering, where each game is a config module rather than custom code.
September 2026
- Python
- Django
- PostgreSQL
- JavaScript
- Scryfall API

DeckPub lets players browse card databases and build, save, and share decks across several trading card games: Star Wars CCG and Star Wars: Unlimited from a local database, and Magic: The Gathering live from the Scryfall API.
Started in 2022 as a Star Wars CCG deckbuilder and later generalized into a multi-game engine.
Highlights
- Configuration-driven games: each game’s deck rules, zones, formats, search filters, and display options live in one config module, so adding or tuning a game rarely touches the core engine
- Format rules: Star Wars: Unlimited supports the rotating Premier format and the everything-legal Eternal format; legality is enforced on save, and an illegal card rolls the whole save back
- No accounts required: a deck gets an edit token on save, which is all that’s needed to edit it later
- JSON API for game configs, card search, and deck save, validate, and search
Engineering
- Django backend with pluggable card providers: a local-database provider for the Star Wars games and a Scryfall proxy for Magic
- Frontend in vanilla JavaScript ES modules with no build step: a shared deck engine, search, stats, and layout core, plus a small per-game plugin for zones, filters, and import/export formats
- Card sets and format legality are versioned through data migrations, so a new set release is a small, repeatable change