Awesome Advent of Code
This is a collection of awesome resources related to the yearly Advent of Code challenge.
- The Official AoC Website
- The AoC Subreddit
- Project Templates
- Tools and Utilities
- Other Advent Calendars
- 2018
- 2019
- 2020
- Solutions
- Ada
- Assembly
- AWK
- Bash
- C
- C#
- C++
- Clojure
- Common Lisp
- Crystal
- D
- Dart
- Elixir
- Elm
- Erlang
- F#
- Go
- Groovy
- Haskell
- Haxe
- Idris
- J
- Java
- JavaScript
- Julia
- Kotlin
- LDPL
- MATLAB
- Nim
- OCaml
- PHP
- Perl
- Pony
- PowerShell
- Prolog
- Python
- R
- Racket
- Raku
- ReasonML
- Red
- Ruby
- Rust
- Smalltalk
- Scala
- Scheme
- SpectX
- SQL
- Swift
- TypeScript
- Unison
- VB.NET
- Zig
- Live Streams
- Solutions
Project Templates
Templates, cookiecutters and skeletons for quickly setting up projects in your favourite language.
- Reason Starter kit for Advent of Code (Reason and OCaml)
- dave-burke/advent-of-code-java-starter (Java)
- gobanos/cargo-aoc (Rust)
- nickyvanurk/advent-of-code-rust-template (Rust)
- hughjdavey/aoc-kotlin-starter (Kotlin)
- codemicro/adventOfCode (Go, Python)
- kindermoumoute/adventofcode (Go)
- staylorwr/elixir_aoc (Elixir)
- mhanberg/advent-of-code-elixir-starter (Elixir)
- AlexeSimon/adventofcode (Python)
- UncleCJ/advent-of-code (Jupyter Python Notebooks)
- sindrekjr/AdventOfCodeBase (C#)
- mhanberg/advent-of-code-clojure-starter (Clojure)
- caderek/aoc-starter-js (JavaScript)
- caderek/aoc-starter-ts (TypeScript)
- mariotacke/template-advent-of-code (JavaScript)
- arkadye/advent_of_code (C++)
- eduherminio/AdventOfCode.Template (C#)
- izexi/aoc-ts-template (TypeScript)
- advent-of-code-template (PHP)
Tools and Utilities
- Alfie -- Online JS editor that helps users solve AoC problems.
- Chrome extension -- Browser extension for private leaderboard visualization
- Firefox extension -- Browser extension for private leaderboard visualization
- Globals medals overview -- Alternative global leaderboard showing first, second and third places as gold, silver and bronze medals.
- Scatterplot of first 100 -- Scatterplot of the time taken to solve the parts of each puzzle by the first 100 people that solved it.
- aocdl -- Command-line utility that automatically downloads your personal input file while you read the puzzle description (Go).
- aocinput -- CLI for getting inputs. Clipboard support. Polite to AoC. Nice help and options. (Go)
- aoc-cli -- Command-line utility that helps solve problems in ruby: it downloads your personal input file, creates the sample source files and benchmarks your solutions (Ruby).
- AoCHelper -- NuGet library that simplifies puzzle solving and provides benchmarking (.NET).
- aocleaderboard -- get over the 200-member limit for private leaderboards and combine multiple leaderboards in a single page with recalculated scores.
- advent-of-code-api -- Haskell library for querying AOC prompts, inputs, and leaderboards (Haskell)
- advent-of-code-orcr -- Command line utility and Haskell library for parsing AoC ascii art words
- aoc-ranking -- Show all non-zero score AoC participants in one, global scoreboard. (Python)
Other Advent Calendars
24 days of cool stuff regarding .
2020
WARNING: All of these likely contain spoilers.
Read CONTRIBUTING.md to learn how to add your own repos.
Solutions
Ada
Solutions to AoC in Ada.
Assembly
Solutions to AoC in Assembly.
AWK
Solutions to AoC in AWK.
Bash
Solutions to AoC in Bash.
C
Solutions to AoC in C.
C#
Solutions to AoC in C#.
- DjolenceTipic/Advent-of-Code
- GuyInGrey/AdventOfCode2020
- Perska/AoC2020
- RaczeQ/AdventOfCode2020
- Raknison123/AdventOfCode2020
- andi0b/advent-of-code-2020
- eduherminio/AoC2020
- encse/adventofcode
- grigoresc/adventofcode.2020
- mddr/advent-of-code-2020
- p-kostic/AdventOfCode2020
- sindrekjr/AdventOfCode
- thejan14/adventofcode2020
C++
Solutions to AoC in C++.
- BuzzHari/advent_of_code
- DarthGandalf/advent-of-code
- Kazhuu/advent-of-code-2020
- Sciencentistguy/AdventOfCode
- TheRealMolen/adventofcode2020
- janpipek/advent-of-code-2020
- jimmiebergmann/AdventOfCode2020
- mfarberbrodsky/adventofcode
- spencerk226/AdventOfCode2020
- tboschi/advent-of-code-2020
- thorstel/Advent-of-Code-2020
- yadavgaurav251/Advent-Of-Code
Clojure
Solutions to AoC in Clojure.
Common Lisp
Solutions to AoC in Common Lisp.
Crystal
Solutions to AoC in Crystal.
D
Solutions to AoC in D.
Dart
Solutions to AoC in Dart.
Elixir
Solutions to AoC in Elixir.
Elm
Solutions to AoC in Elm and Literate Elm.
Erlang
Solutions to AoC in Erlang.
F#
Solutions to AoC in F#.
- JanDotNet/AdventOfCode
- ThomasGoetzmann/AdventOfCode2020
- jilleJr/adventofcode-2020-fsharp
- wimex/AdventOfCode2020
Go
Solutions to AoC in Go.
- NoMod-Programming/Advent-of-Code-2020
- bartvanackooij/adventofcode2020
- chigley/advent2020
- codemicro/adventOfCode
- codingdiaz/advent-of-code-2020
- davidporos92/aoc-2020
- dds/aoc2020
- devries/advent_of_code_2020
- j4rv/advent-of-code-2020
- jugendhacker/adventofcode
- kindermoumoute/adventofcode
- lynerist/Advent-of-code-2020-golang
- mnml/aoc
- nlowe/aoc2020
- thlacroix/goadvent
Groovy
Solutions to AoC in Groovy.
Haskell
Solutions to AoC in Haskell.
- BZuilhof/AdventOfCode
- Sciencentistguy/AdventOfCode
- SimonBaars/AdventOfCode-Haskell
- bionikspoon/HaskellAdventOfCode2020
- ephemient/aoc2020
- haskelling/aoc2020
- jitwit/aoc
- mstksg/advent-of-code-2020
- siraben/hoac-2020
Haxe
Solutions to AoC in Haxe.
Idris
Solutions to AoC in Idris.
J
Solutions to AoC in J.
Java
Solutions to AoC in Java.
- Alex1607/AdventOfCode2020
- Ernyoke/advent-of-code-2020
- PulseBeat02/Advent-of-Code-2020
- SimonBaars/AdventOfCode-Java
- SizableShrimp/AdventOfCode2020
- akaritakai/AdventOfCode2020
- mattgogerly/AdventOfCode
- mzielinski/advent-of-code-2020
- yeroc/advent-of-code
JavaScript
Solutions to AoC in JavaScript.
- AxemaFr/AdventOfCode-2020
- BenHall-1/AdventOfCode
- Butterstroke/Advent-of-Code-2020
- KonradLinkowski/AdventOfCode
- NLDev/Advent-of-Code-2020
- adamczarnecki/advent_of_code_2020
- adriennetacke/advent-of-code-2020
- chinesedfan/adventofcode
- cullylarson/advent-code-2020
- falsepopsky/advent-of-code-2020-js
- leyanlo/advent-of-code
- mariotacke/advent-of-code-2020
- mdunisch/adventOfCode2020
- neg4n/advent-of-code
- ridaamirini/advent-of-code
- rorz/advent-of-code-2020-functional-js
- ryanolsonx/aocjs
- s1gr1d/aoc-2020_functional-JS
- theninthsky/advent-of-code
Julia
Solutions to AoC in Julia.
Kotlin
Solutions to AoC in Kotlin.
- Albert221/advent-of-code
- JuanMaCuevas/AdventOfCode2020
- agrison/advent-of-code-2020
- bence-t0th/Advent-of-Code-2020
- crepppy/aoc2020
- edgars-supe/advent-of-code
- ephemient/aoc2020
- hughjdavey/aoc-2020
- janbina/advent-of-code-2020
- jorispz/aoc-2020
- nschwermann/AdventOfCode
- yangzii0920/advent-of-code-2020
LDPL
Solutions to AoC in LDPL.
MATLAB
Solutions to AoC in MATLAB (Octave).
Nim
Solutions to AoC in Nim.
- 0xSMT/advent-of-code-2020
- MarcosSevert/AoC2020
- aod/advent-of-nim
- dimspith/AdventOfCode2020
- jgesc/AdventOfCode2020
- pietroppeter/adventofnim
OCaml
Solutions to AoC in OCaml.
PHP
Solutions to AoC in PHP.
- CostingGeek/advent-of-code-2020
- XonneX/adventofcode2020
- hapidjus/AdventOfCode
- ridaamirini/advent-of-code
- vuryss/aoc-php
- xavice/advent-of-code
Perl
Solutions to AoC in Perl.
Pony
Solutions to AoC in Pony.
Prolog
Solutions to AoC in Prolog.
PowerShell
Solutions to AoC in PowerShell.
Python
Solutions to AoC in Python.
- Akumatic/Advent-of-Code
- IanFindlay/advent-of-code
- Kurocon/AdventOfCode2020
- Levivig/AdventOfCode2020
- Manas02/Advent-of-code
- Robin-Bakker/advent-of-code
- VasileiosGeladaris/AdventOfCode2020
- agubelu/Advent-of-Code-2020
- asiron/aoc
- aufbakanleitung/advent-of-code-2020
- aureliensimon/avent-of-code-2020
- campierce/advent-of-code
- candemircan/adventofcode
- codemicro/adventOfCode
- d1618033/aoc
- dalealleshouse/advent_of_code
- danwigrizer/Advent-of-Code
- david-ds/adventofcode-2020
- eliseomartelli/Advent-of-Code-2020
- elvinyhlee/advent-of-code-2020-python
- ephemient/aoc2020
- facufrau/Advent-of-code-2020
- gamma032steam/Advent-of-code-2020
- gbusch/AdventOfCode/
- gui1612/advent_2020
- hmludwig/aoc2020
- howtodowtle/advent_of_code
- irobin591/advent-of-code
- jesperdramsch/advent-of-code
- john-sandall/advent-of-code
- jon-edward/advent-of-code-2020
- kamaravichow/advent-of-code-2020-python
- ktmeaton/advent-of-code-2020
- lukestorry/advent-of-code-2020
- matus-pikuliak/advent_2020
- mebeim/aoc
- pauldraper/advent-of-code-2020
- peter-roland-toth/AoC-2020-Python
- r0f1/adventofcode2020
- rubennoriegamier/advent_of_code_2020
- sammyrulez/adventofcode
- sebadel/adventofcode2020
- sejaldua/advent-of-code-2020
- silverben10/aoc
- tboschi/advent-of-code-2020
- tombombadilv/advent-of-code-2020
- wysockipiotr/aoc
- yufengg/adventofcode
R
Solutions to AoC in R.
- CharnelMouse/AdventOfCode2020
- JohannesFriedrich/AdventOfCode2020
- akulumbeg/adventofcode
- fdlk/advent-2020
- lemonad/advent-of-code
- nirski/aoc20
- plannapus/Advent_of_Code
- rrrlw/advent-of-code
Racket
Solutions to AoC in Racket.
Raku
Solutions to AoC in Raku.
ReasonML
Solutions to AoC in ReasonML.
Red
Solutions to AoC in Red.
Ruby
Solutions to AoC in Ruby.
Rust
Solutions to AoC in Rust.
- agubelu/Advent-of-Code-2020
- aniljava/aoc-2020
- baszalmstra/adventofcode2020
- believer/advent-of-code
- deepakrb/aoc-2020
- drwilco/aoc
- ephemient/aoc2020
- floatdrop/aoc
- fornwall/advent-of-code
- hashedone/aoc2020
- lukestorry/advent-of-code-2020
- maksyms/aoc2020
- naamancurtis/advent_of_code
- nickyvanurk/advent-of-code
- novoselov-ab/adventofcode-2020-rust
- phantomion/rust_aoc
- sertsedat/advent-of-code
- shank/advent-of-code
- stannislav/advent-of-code
- tejasbubane/adventofcode-2020
- warycat/rustgym
- williamfhe/advent-of-code-2020
- youngtrashbag/adventofcode
- zsacul/AdventOfCode2020
Smalltalk
Solutions to AoC in Smalltalk.
Scala
Solutions to AoC in Scala.
- FlorianCassayre/AdventOfCode-2020
- jirkavrba/advent-of-code
- niedrist/advent-of-code-2020
- sim642/adventofcode
Scheme
Solutions to AoC in Scheme.
SpectX
Solutions to AoC in SpectX.
SQL
Solutions to AoC in SQL.
Swift
Solutions to AoC in Swift.
- UMPUSTEN/AoC-2020
- bence-t0th/Advent-of-Code-2020
- fguchelaar/AdventOfCode2020
- gernb/AdventOfCode2020
- juanj/AdventOfCode2020
- lighthouse16/AdventOfCode
TypeScript
Solutions to AoC in TypeScript.
- AlexAegis/advent-of-code
- GliderGeek/adventofcode20
- RubenVerg/aoc2020
- WillGresham/AdventOfCode2020
- adaamz/advent-of-code-2020
- allarallas/aoc2020
- anetz89/adventofcode20
- arnauddrain/advent-of-code-2020
- cheemcheem/adventofcode2020
- izexi/adventofcode2020
- marcobiedermann/advent-of-code
- matthewtole/advent-of-code
- milanosie/adventofcode2020
- sanraith/aoc2020
- ttbowen/advent-of-code-2020
Deno
Solutions to AoC in Deno (TypeScript).
Unison
Solutions to AoC in Unison.
VB.NET
Solutions to AoC in VB.NET.
Zig
Solutions to AoC in Zig.
Live Streams
Folks who are live streaming their process.
- Alca (JavaScript)
- ClysmiC (C++)
- Pewqazz (Python)
- Ph3rny (Python)
- SimonBaars (Java + Haskell)
- anagonlive (Python)
- chrisforrence (PHP)
- dr_njitram (Python)
- hurlian (Python)
- jonathan_paulson (Python)
- jwise00 (Lua)
- lizthegrey (Go)
- lukechampine (Go/Zig)
- martinjaniczek (Elm)
- maryjostaebler (JavaScript)
- nicuveo (Haskell)
- pengiswe (Excel)
- psymar_ (Python)
- spaceboyr00 (Python)
- theypsilon (Rust)
- vwoo (Ruby)
- yernab (APL)