Expand description
§Advent-of-Utils
§Introduction
Advent of Utils helps you solving your Advent of Code challenges. Not by implementing the solutions for you, but by handling the boilerplate work so you can focus on solving the puzzles.
§Table of Contents
§Features
- 🚀 Automatic input fetching with local caching
- 📊 Built-in performance benchmarking
- 🔧 Simple macro-based setup
- 💾 Session token management
§Setup
§Prerequisites
- An Advent of Code account and session token
- Rust toolchain installed
§Installation
Add this to your Cargo.toml:
[dependencies]
advent-of-utils = "0.1.0" # Replace with actual version
[lib]
crate-type = ["cdylib"]§Environment Setup
Set your Advent of Code session token:
# Linux/MacOS
export AOC_SESSION=your_session_token
# Windows (PowerShell)
$env:AOC_SESSION="your_session_token"You will find your session token in the cookies on the Advent of Code page when you are logged in.
§CLI Reference
§Available Commands
# Run a specific day's solution
aou run <YEAR> <DAY>
# Run all implemented solutions
aou run <YEAR>
# Show help
aou --helpMacros§
- A procedural macro that generates boilerplate code for Advent of Code solution modules.
Enums§
- Represents different types of option values that can be returned from your Advent of Code solutions. This enum provides a type-safe way to handle different value types that might be encountered as results.
Traits§
- Defines the interface for implementing Advent of Code daily puzzle solutions. This trait must be implemented for each day’s solution, providing methods to solve both parts of the puzzle.