This repository contains the implementation of a generator for the Dobble game (also known as Spot It!), a popular card game known for its fun and fast-paced gameplay. The game is based on a set of cards, where each card has a unique combination of symbols, but every pair of cards shares exactly one symbol in common.
This generator is designed to let you provide 57 custom symbols, and it will automatically generate a print-ready PDF containing 57 cards, each featuring 8 symbols.
For a detailed explanation of the algorithm used, please refer to my Medium article
where I explain the different steps of the algorithm.
If you'd like to avoid the hassle of setting up your Python environment, you can effortlessly use this dedicated Google Colab notebook
.
Simply run it on Google Colab
.
Run
python3 -m dobble --symbols_folder <SYMBOL_FOLDER> --output_folder <RESULT_FOLDER>
to execute the 3 following steps:
- Make all images square and rotation-proof and extract their binary masks
- Generate 57 cards with randomly drawn symbols
- Merge Dobble cards into a scaled PDF ready to print
To try on toy data, run
python3 -m dobble --symbols_folder images/symbols_examples/ --output_folder result
Tip: you can use a "circle punch" to cut the printed cards.
Contributions are welcome!
This project is licensed under the non-commercial CC BY-NC-SA 4.0 License.