A powerful application to dynamically generate decks of cards from a YAML specification and a CSV data file.
DeckSmith is ideal for automating the creation of all kinds of decks, including TCG decks, tarot decks, business cards, and even slides.
- ✨ Consistent layout and formatting across all cards. Define once, edit anytime, generate as many cards as you need.
- 🍳 Pure python, for easy installation via pip or with the Windows installer.
- 🖥️ Modern GUI with a live preview to visualize your changes in real time as you design.
- ⚡ Highly performant card generation using parallel processing.
- 📖 Intuitive syntax and extensive documentation that includes examples to help you get started.
- 🧰 Tons of powerful features such as:
- Start from a sample project and edit it instead of starting from scratch
- Extensive support for images, text, and all kinds of different shapes
- Link any field to a column in the CSV file
- Position elements absolutely or relative to other elements, using anchors to simplify placement
- Powerful image transformations using filters like crop, resize, rotate, or flip
- Export your deck as images or as a PDF for printing
- Download and install the latest release.
- Take a look at this to learn how to make the most out of the app and start building your first deck today!
-
To begin, install DeckSmith by running:
pip install decksmith
-
To launch the GUI, run:
decksmith --gui
-
Run the following command to start from sample
deck.yamlanddeck.csvfiles:decksmith initdeck.yamldefines the layout for the cards in the deck.deck.csvholds the data for each card, like the content of the text fields and the image paths.
-
Edit
deck.yamlto include all the elements you want on your cards. You can find a complete list of all the available elements and their properties in the documentation. -
You can reference any column from
deck.csvin thedeck.yamlfile as%column_name%.
-
When you are ready to generate the deck images, run:
decksmith build -
After building a deck, you can export it to PDF by running:
decksmith export
Check out the full documentation for more detailed information on how to use DeckSmith.
