Advent of Code Private Leaderboard in Dash
Dash app that loads and parses Advent of Code leadboard json
The app is running live on my web site, go check it out there! Upload your own private leaderboard JSON and see it in action.
Uses dcc.Upload
and dcc.Store
to load and store JSON from the AoC API, which is then parsed into pandas dataframes and figures by my aoc_scoreboard module.
With the default config file, the app will display an upload widge to accept uploaded JSON. Create your own config.py
file if you wish to change settings to use server-side JSON and disable upload. Similarly you can change the base_url via the config file if self-hosting.
Clickable column headers that link to the day's AoC problem and bootstrap tooltips are courtesy of the callable one can pass to modify the header row in my Dash DataFrame Table module, so if you want to deploy this yourself, you'll need to install that module as well.
Things to do:
-
Improve upon the rudimentary layout. Tabs may not be the best way to organize things.
-
If the data store is empty/missing an upload, show some sort of example data. (or perhaps a "load example data" button...)