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
.env
file):- 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.yml
exposes the webserver on host port 80 and mounts thefiles
directory 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.yml
to 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 - [email protected]
Project Link: https://github.com/Dherlou/aoc-leaderboard