Advent of Code
All 374 stars from 2018 to 2025, in a different language every year, tested in CI and shown on an advent calendar dashboard.

About the project
Advent of Code is a yearly event by Eric Wastl: from 1 December, a new programming puzzle unlocks every day, each in two parts, the second a twist on the first. The puzzles start simple and grow into graph search, simulation, dynamic programming and number theory, often with inputs too large for a naive approach.
I use it to learn a new language each December, and I went back to finish the earlier years too: Go for 2018, Java for 2019, Kotlin for 2020, Python for 2021, TypeScript for 2022, JavaScript for 2023, C# for 2024 and Elixir for 2025. Every puzzle of all eight years is solved, 374 stars in total.
Each year is a self-contained project with that language's usual tooling and tests. A GitHub Pages dashboard shows every puzzle as a door of an advent calendar, with links to the puzzle, the solution and its tests.
What you can try
- Advent calendar of all eight years, where the fill of each door shows how long the solution is
- Hover or click a door to preview the puzzle and open its solution; the arrow keys work too
Under the hood
- Every day is tested against the examples from the puzzle and against my own input
- One GitHub Actions workflow per year runs the example tests with that language's test framework: go test, JUnit, Kotlin test, pytest, Jest, NUnit and ExUnit
- A Python script builds the dashboard from the README and the solution files, and a workflow deploys it on every push
- When
- 2022 – 2025
- Type
- Personal
- Stack
- Python
- Kotlin
- TypeScript
- JavaScript
- Go
- Elixir
C#
- Java
- GitHub Actions
- GitHub Pages
