- Notifications
You must be signed in to change notification settings - Fork3
cmucc/tapp
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Totally Automated Propaganda Producer
This package contains scripts to be used to produce marketing materials for theCarnegie Mellon University Computer Club.
A copy of this repository is available to club members at/afs/club.cc.cmu.edu/projects/tapp
.Users can edit thedata
directory and run the scripts as needed.
Before running these scripts, you mustinstallpip
,a Python package manager. If you'd like to keep TAPP's dependencies in theirown virtual environment (or "venv"), separate from the rest of your Pythontoolchain, you'll also want thepython3-venv
package for your operating system.
Then, to create a venv and install all of the necessary modules on your system,run:
python3 -m venv .venv/ --prompt tappsource .venv/bin/activatepip3 install -r requirements.txt
If you use a venv, make sure to activate it before running any of TAPP'sgenerators.
Alternatively, if you don't mind polluting your local user environment:
pip3 install --user -r requirements.txt
To produce all of the propaganda for a semester,check the variables at the top of theMakefile
and run:
make
With the proper AFS permissions, the files can be published to the web using:
make publish
See data files such asdata/2015-08_F15-talks.json
for input reference.Use 0 as thecat
value for weeks without a talk due to holidays, etc.
Acat
value for each talk is required and relates to how it is colored on the posters;however, thecategories
array is optional and relates to how the schedule is rendered on the web.If thecat
values are not logically contiguous (see Fall 2016 as an example), it is best to dispense with the categories.
Usage:
python3 -m tapp.talks.svg_gen -i foo.json -o bar.svg [-g]
The file2015logo_light.svg
must be in the same directory as the output fileto display properly. Additionally, the filename given in thesponsor_logo
field must be relative to the output file.
Use-g
to generate a grayscale version more suitable for mass printingthan the full-color version. In some browsers, logos may remain in color.
Usage:
python3 -m tapp.talks.ics_gen -i foo.json -o bar.ics
Usage:
python3 -m tapp.talks.php_gen -i foo.json -o bar.php
See data files such asdata/2015-08_F15-flyer.json
for input reference.
Usage:
python3 -m tapp.flyer.svg_gen -i foo.json -o bar.svg
The files2015logo_light.svg
andcmucc_qr.svg
must be in the same directoryas the output file to display properly.
Generated SVGs are intended to be viewed and printed fromGoogleChrome. Talk Series posters are bestprinted to tabloid (17"x11") paper, landscape orientation, with margins set to0.25" on the left and right, 0.2" on top, and 0" on bottom. Club Overviewflyers are best printed to letter (8.5"x11") paper, portrait orientation, withthe "minimum margins" setting.For the most consistent results, print to aPDF.
In some cases, when attempting to open the SVGs in other tools, the transcluded logoscan cause issues. As a workaround, manually remove the<image>
tags from theSVG output, and replace them using an SVG editor such asInkscape. Ensure all required fonts areinstalled, resize to desired output size, and print.