Python SSG for tracking online TCG collection
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
trémeur 5a4de3d8cd Sort faves alphabetically 2 weeks ago
build Minimal styling for search page, allow search for a whole deck, allow case-insensitive search 4 weeks ago
.gitignore Add card type filter 1 month ago
COPYING MVP 1 month ago
README.org Add thresholds for medium and high priority 3 weeks ago
build.sh MVP 1 month ago
collectinggen.py Add thresholds for medium and high priority 3 weeks ago
download.py Add page for masteries, get deck types from a file, some refactoring 4 weeks ago
generate.py Add textareas and progress indicators 2 weeks ago
indexgen.py Sort faves alphabetically 2 weeks ago
levelsgen.py Lazy load card images 1 month ago
log-template.py Move portfolios to log 4 weeks ago
loggen.py Move portfolios to log 4 weeks ago
masteredgen.py Add page for masteries, get deck types from a file, some refactoring 4 weeks ago
ownedgen.py Add page for masteries, get deck types from a file, some refactoring 4 weeks ago
portfoliosgen.py Move portfolios to log 4 weeks ago
searchgen.py Add thresholds for medium and high priority 3 weeks ago
setup.py Generate sketchpads 1 month ago
skel.py Add card search 4 weeks ago
tcgcore.py Sort faves alphabetically 2 weeks ago
thetypes.py Add page for masteries, get deck types from a file, some refactoring 4 weeks ago
tradegen.py Add textareas and progress indicators 2 weeks ago
variables-template.py Add thresholds for medium and high priority 3 weeks ago
wantedgen.py Add textareas and progress indicators 2 weeks ago

README.org

tcg

Python scripts to generate a mobile-friendly static site for tracking tcg cards (designed for 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:
  git clone https://git.praze.net/tre/tcg.git
  cd tcg
  cp log-template.py log.py
  cp variables-template.py variables.py
  • 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 youre collecting
    • mediumpriority: a list of other decks youre 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
  • Run the following:

      python3 setup.py
      chmod +x build.sh
  • 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.
  • 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" that arent relevant).
  • Run ./build.sh in this directory to download the relevant card images and then upload everything to the server.

Currently unaccounted for

  • Duplicates (should be fine but not checked)
  • Coupons
  • Card search
  • Date to level needs redone