* tcg Python scripts to generate a mobile-friendly static site for tracking tcg cards (designed for [[https://colors-tcg.dreamwidth.org][colors]]). ** Instructions *** Requirements - =python3= - server space - subdomain pointing to your site root on the server - =rclone= with your server set up as a remote *** Setup - Download and create the initial files by running: #+BEGIN_SRC bash git clone https://git.praze.net/tre/tcg.git cd tcg cp log-template.py log.py cp variables-template.py variables.py #+END_SRC - Edit =variables.py= to set the variables as follows: - =servername=: name set for your remote in =rclone= - =serverpath=: path to the site root on the server (with leading slash, without trailing slash) - =name=: the name you use in the game - =highpriority=: a list of high priority decks you’re collecting - =tradepost=: URL of your trade post on Dreamwidth - =faves=: a list of cards to showcase on the index page - =headerbackground=: an HTML colour to display behind your header image and set as a theme colour - =british=: =True= if you want “grey” to display on the site, =False= if you want “gray” - =collectthreshold=: minimum number of owned cards for putting a deck in the “collecting” category - =mediumthreshold=: minimum number of owned cards for marking a deck as medium priority - =highthreshold=: minimum number of owned cards for marking a deck as high priority - =keepsig=: =True= if you always want to keep one copy of your signature, =False= if you want to make them all available for trading - =tradestatement=: statement to place on your trading page - =maxmastered=: maximum number of most recently mastered decks to show on the index page - =ownedpage=: =True= if you want a page displaying your entire collection, =False= otherwise - =masscollect=: list (python dict) of series/themes being mass collected and which decks to include in each one - Run the following: #+BEGIN_SRC bash python3 setup.py chmod +x build.sh #+END_SRC - Save a header image to =build/assets/header.png= - Save each stage of a filled sketchpad to =build/assets/sketch/=, as =00.gif=, =01.gif=, etc. - Save coupons to =build/assets/coupons/=, with filenames that match the codes you’ve given them in =log.py=. - Add level images manually to =build/assets/levels/= - Add custom CSS to =build/user.css= *** Updating and building - For each transaction, add a dictionary ={}= to the =log= list like in the example (removing any of ="received"=, ="lost"=, ="crayons"=, ="decks"=, ="coupons">= that aren’t relevant). - Run =./build.sh= in this directory to download the relevant card images and then upload everything to the server.