Create cards for the "Human Bingo" icebreaker game, with customizable properties and templating.
This is an icebreaker game to play on the first day of class. See About.com or WikiHow for references.
- Read cardset specifications as XML and YAML files. The YAML specification is newer, more flexible, and easier to write. The XML specification is older, and seemed like a good idea at the time.
- Write HTML and PDF files. Since it's more likely the cards will be printed onto paper, the default is writing PDF. Originally, only HTML files were created, and PDF conversion was done by a third-party utility (wkhtmltopdf). In version 3 the PDF writer was baked in. Since the PDF writer internally creates HTML first, the HTML feature is still maintained.
Installing the package exposes a script humanbingo
. Call it like this:
$ humanbingo [-n|--number NUM] [-v|--verbose] [-d|--debug] [-o|--output] OUTPUTFILE [-f|--input-format] (yaml|xml) [-F|--output-format] (pdf|html) INPUTFILE
Read properties file as its sole argument. If neither -n
or
--number
option is not specified, write one bingo card to stdout.
If -n NUMBER
or --number=NUMBER
is
specified, writes NUMBER cards to separate files.
Warning
At this time writing PDF to stdout is not supported. But you probably don't want to do that anyway.
To easily print the PDF cards, they can be concatenated with pdftk:
$ /path/to/pdftk card*.pdf cat output allcards.pdf
See https://human-bingo.readthedocs.io.
Free software: MIT license
Human bingo relies on a lot of big python packages, heartily endorsed.
- Jinja2 for templating
- Click for publishing command-line applications
- WeasyPrint for converting HTML to PDF
We also use ruamel.yaml over PyYaml since it supports a few more features (notably,
the !!omap
sequence declaration).
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.