An attempt at Advent of Code using Go!
Each day will be setup as a separate folder.
- Day 0 - Trebuchet?! (2023 Day 1)
- Day 1 - Historian Hysteria
- Day 2 - Red-Nosed Reports
- Day 3 - Mull It Over
- Day 4 - Ceres Search
- Day 5 - Print Queue
- Day 6 - Guard Gallivant
- Day 7 - Bridge Repair
- Day 8 - Resonant Collinearity
To setup your environment:
- Install Golang (or
brew install golang
) - Install Golang CI Lint:
brew install golangci-lint
- Install Just:
brew install just
- Install gotestfmt:
go install github.com/gotesttools/gotestfmt/v2/cmd/gotestfmt@latest
- Make sure your GOPATH/bin is in your PATH:
export PATH=$PATH:$(go env GOPATH)/bin
- Make sure your GOPATH/bin is in your PATH:
- Clone this repository
- Create a new day from template:
just create X
(where X is the day number) - Be Merry! 🎄
To run tests for an individual day X, run just test X
or to run all tests run just test-all
To run linting for an individual day X, run just lint X
or to run all linting run just lint-all
To run a solution, run just run <day> <part>
where day is the day number and part is the part number. Example: just run 1 1
to run day 1, part 1
To run benchmarks for an individual day X, run just bench X
or to run all benchmarks run just bench-all