arrive

Crates.ioarrive
lib.rsarrive
version
sourcesrc
created_at2022-12-06 14:33:00.655482+00
updated_at2024-12-14 18:02:38.997263+00
descriptionA simple CLI tool for interacting with Advent of Code
homepage
repositoryhttps://github.com/tranzystorekk/arrive
max_upload_size
id731188
Cargo.toml error:TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
(tranzystorekk)

documentation

README

Arrive

GitHub release (latest SemVer) Crates.io

About

A simple tool to fetch your Advent of Code input and submit your solutions.

Key features and goals:

  • keeps your current AOC day selection and solution status in a TOML state file (for human readability)
  • caches input files to ease load on AOC servers
  • reasonably minimal dependencies

Directories used (see dirs for more info):

Description Path
Cache ${XDG_CACHE_HOME}/arrive or ${HOME}/.cache/arrive
State ${XDG_STATE_HOME}/arrive or ${HOME}/.local/state/arrive

Installation

Arch Linux:

Arrive is available on the AUR as arv. You can install it with your preferred AUR helper. Example:

paru -S arv

Via Cargo:

cargo install --locked arrive

From source:

git clone https://github.com/tranzystorekk/arrive.git
cargo install --path arrive

Usage

Set a new session token (see Token section):

arv token set <token>

Print currently stored session token:

arv token show

Select currently processed advent day:

arv select -y <year> -d <day>

Show current selection and day completion status:

arv status

Print input for current selection:

arv input

Save input to file:

arv input > path/to/file.txt

Submit advent solution for current selection. If <solution> is omitted, STDIN is read instead.

arv submit [<solution>]

Token

For the web commands (arv input, arv submit) to work, a valid AOC session token needs to be supplied to arv token set.

To obtain such a token, do the following:

  1. Login to AOC: https://adventofcode.com/auth/login
  2. In your browser, open the developer tools
  3. Navigate to Storage -> Cookies
  4. Find and copy the entry named session
  5. Run arv token set <token>

These tokens have long expiration dates, so you can typically set-and-forget once.

Acknowledgements

Deeply inspired by aocf!

Commit count: 62

cargo fmt