This repository hosts a simple dockerized webpage based on PHP that crawls Advent of Code's API for your configured private leaderboard and displays the leaderboard in a different theme than the original website.
Example Deployment
·
Report Bug
·
Request Feature
To get a local copy up and running follow these simple steps.
"All you need is LOVE!" - and Docker as well as Git!
Once docker is installed, you must follow these steps:
-
Clone the repo
git clone https://github.com/Dherlou/aoc-leaderboard.git
-
Set up your environment (create a
.envfile):- AOC_SESSION_COOKIE: your session cookie of Advent of Code (required for crawling your private leaderboard, can be grabbed from your browser's cookie storage after logging in to the official Advent of Code website, typically valid for around 1 month)
- AOC_LEADERBOARD_ID: the ID of your private leaderboard (required for crawling your private leaderboard)
- AOC_LEADERBOARD_TITLE: a custom title for your dashboard (optional, default: 'Advent of Code Private Leaderboard')
- AOC_LEADERBOARD_FAVICON: a custom favicon URL(-path) for your dashboard (optional, default: IT-Centre of University of Würzburg favicon)
- AOC_LEADERBOARD_LOGO: a custom logo URL(-path) for your dashboard (optional, default: IT-Centre of University of Würzburg logo)
- AOC_YEAR: the year of the event (optional, default: current year)
- AOC_NO_GLOBAL_SCORE: enable to hide the global score column on the dashboard (optional, default: false)
- DEV_MODE: enable to display the Advent of Code API's response at the bottom of the page (optional, default: false)
-
Build the docker image and start the container:
docker-compose (-f docker-compose.yml -f docker-compose.dev.yml) up -d
Including the
docker-compose.dev.ymlexposes the webserver on host port 80 and mounts thefilesdirectory into the container for an easy local development. If you want to use it in production, you can forward requests from an ssl-offloading proxy-server (e.g. nginx) to this container or make changes to thedocker-compose.ymlto fit your environment.
- i18n
- wait for bootstrap to fix layered icons
Distributed under the GNU Affero General Public License. See LICENSE for more information.
Lucas Kinne - lucas@luckev.info
Project Link: https://github.com/Dherlou/aoc-leaderboard