aoc.el icon indicating copy to clipboard operation
aoc.el copied to clipboard

View AoC leader boards in Emacs

#+TITLE: aoc.el -- Advent of Code private leaderboard client

[[2021][file:https://github.com/pkulev/aoc.el/blob/main/images/screenshot1.png]] [[2020][file:https://github.com/pkulev/aoc.el/blob/main/images/screenshot2.png]]

  • Installation

** Via =use-package= #+begin_src elisp (use-package aoc :ensure nil :quelpa (aoc :repo "pkulev/aoc.el" :fetcher github :upgrade t) :custom (aoc-private-leaderboard-ids '("<LEADERBOARD-ID>") "Get this from leaderboard URL.") (aoc-user-session-id "<SESSION-ID>" "Get this from request cookies in browser.")) #+end_src

  • Keys in private leaderboard table

    |-----+-----------------------------------| | Key | Description | |-----+-----------------------------------| | g | Refresh this table. | | f | Show table for the next year. | | b | Show table for the previous year. | | q | Bury table buffer. | |-----+-----------------------------------|

  • Customization Customizable variables are subject for change so, TODO TBA here.

    • =aoc-user-session-id= :: /Session ID./

      Session ID that appears in cookies after authentication on https://adventofcode.com.

    • =aoc-private-leaderboard-ids= :: /List of IDs for leaderboards./

      List of Leaderboard IDs to choose from when activating the mode.

    • =aoc-private-leaderboard-url= :: /Private leaderboard URL template./

      You probably should not touch it.

    • =aoc-private-leaderboard-year= :: /Year for leaderboard./

      Local buffer variable. Default value is current year.

    • =aoc-private-request-interval= :: /Request interval (author asks to keep 15min interval)./

      Will be used for updates by timer and tracking manual updates (TODO caching).