A cli tool to automatically download and upload advent of code problems.

Overview

Advent of Code CLI

CLI client for advent of code.

The purpose of this tool is so you don't have to leave your editor while participating (if you are lazy like me) or if you want to save seconds if you are trying to be competitive.

Please do not use this tool for automated AI assisted submissions.

This is actively discouraged by the AoC team and against the spirit of AoC.

Please also be careful to not send too many requests. There is a note about this in the html source code (view-source:https://adventofcode.com/):

Please be careful with automated requests; I'm not a massive company, and I can only take so much traffic. Please be considerate so that everyone gets to play.
...
- Eric Wastl

Also consider donating to the makers of AoC.

Example

# You can get the session from the cookies of https://adventofcode.com
# It has a relatively long lifetime so you can set it in your .bashrc and co
export AOC_SESSION="<your-session>"
mkdir ./template # Feel free to add your code boilerplate in this folder
aoc new -y 2020 -d 1 # This will create the "day_1" folder and downloads the problem into it
# After you solved the problem
cd day_1
aoc submit -l 1
# Download the second problem
aoc download
# Submit it
aoc submit -l 2

Installation

Install it with cargo:

cargo install --git https://github.com/tobias-walle/advent-of-code-cli

Documentation

aoc --help:

Tool to automate downloading and submitting advent of code problems.

It requires the AOC_SESSION environment variable to be defined. You can get the session value from the cookies on the advent of code page.

You also need to define a `./template` folder which gets copied then creating a problem folder.

Usage: aoc [OPTIONS] <COMMAND>

Commands:
  new       Creates a new folder and downloads the problem into it
  download  Download the problem statement, input and example
  submit    Submit your result
  help      Print this message or the help of the given subcommand(s)

Options:
  -c, --config <CONFIG>
          The path of the configuration file. If defined you don't need to define the year and day in the commands. Example: ```toml year: 2020 day: 1 ``` It can contain the fields "year" and "day"

          [default: ./aoc.toml]

  -h, --help
          Print help (see a summary with '-h')
You might also like...
A simple CLI to build VEXCode V5 Pro projects and download them to the V5 brain.

vexer A simple CLI to build VEXCode V5 Pro projects and download them to the V5 brain. (WIP) This currently is only tested on and only works on window

A CLI tool that uses ChatGPT to automatically generate commit messages.

Auto Git Commit This project is a tool that uses the OpenAI GPT model to automatically generate commit messages for Git commits based on the changes m

cli application to visualize crate download metrics.

cli application to visualize crate download metrics.

dlfile is a very simple, straightforward CLI to download a file

dlfile dlfile is a very simple, straightforward CLI to download a file, except it... Only downloads over HTTPS Requires TLS 1.2 or higher Executes in

Multi-protocol CLI download accelerator
Multi-protocol CLI download accelerator

dlrs dlrs is a multi-protocol download tool for the command line. Written in Rust, dlrs splits your downloads to speed them up where possible. Feature

A commandline tool to download video from bilibili.

Bilibili-dl 不断学习,持续更新中.... A commandline program to download video from bilibili. How to use bilibili-dl -h print help bilibili-dl download URL to

My solutions for the Advent of Code 2021 in Scala, Python, Haskell and Rust.

Advent of Code 2021 These are my Advent of Code 2021 solutions written in Scala 3, Haskell, Python and Rust. Day Title L1 L2 L3 L4 01 Sonar Sweep Scal

My solutions for the 2021 edition of the Advent of Code, using Rust and SOM (Simple Object Machine)

Advent of Code 2021 These are my solutions for the 2021 edition of the Advent of Code. The solutions are all implemented using both Rust and SOM (Simp

Doing advent of code with CUDA and rust.

advent-of-cuda I want to get better at writing cuda kernels so I plan on doing advent of code with cuda. You can follow along here. This for advent of

Owner
Tobias Walle
Tobias Walle
A rust library + CLI tool that tells you when swas will upload new video through complex calculations

A rust library + CLI tool that tells you when swas will upload new video through complex calculations. It also lets you search and play youtube videos of swas and other channels. Searching about youtube channels is also an option. Basically it's a youtube search cli tool written in rust.

midnightFirefly 4 Jun 10, 2022
TTAutoRecord is a tool to automatically download TikTok Livestreams of users you follow.

TTAutoRecord: Automated TikTok Live Stream Recorder TTAutoRecord is a specialized utility designed to automate the recording of live streams on TikTok

Ollie 4 Oct 30, 2023
Rust-advent - Learning Rust by solving advent of code challenges (Streaming live on Twitch every Monday)

Rust advent ?? ?? Learning Rust by implementing solutions for Advent of Code problems. ?? HEY, we are live-streaming our attempts to solve the exercis

Luciano Mammino 20 Nov 11, 2022
A command-line tool aiming to upload the local image used in your markdown file to the GitHub repo and replace the local file path with the returned URL.

Pup A command line tool aiming to upload the local image used in your markdown file to the GitHub repo and replace the local file path with the return

SteveLau 11 Aug 17, 2022
Eslint - Find and fix problems in your JavaScript code.

ESLint Website | Configuring | Rules | Contributing | Reporting Bugs | Code of Conduct | Twitter | Mailing List | Chat Room ESLint is a tool for ident

ESLint 22k Jan 9, 2023
A simple command line program to upload file or directory to web3.storage with optional encryption and compression

w3s-cli A simple command line program to upload file or directory to web3.storage with optional encryption and compression. Features Uploads single fi

qdwang 5 Oct 22, 2022
CLI tool and crate to download FTDC data from mongodb clusters.

Download mongodb FTDC data Command line tool and lib crate to download FTDC data from mongodb clusters to investigate with e.g. keyhole. Crate For the

Mathias Oertel 0 Nov 7, 2021
A cli tool to download specific GitHub directories or files

cloneit A cli tool to download specific GitHub directories or files. Installation From git git clone https://github.com/alok8bb/cloneit cd cloneit car

Alok 54 Dec 20, 2022
A cli tool to download Imperial DoC past papers 🦀

Exams DoC Downloader A cli tool to download past papers from exams.doc.ic.ac.uk. An excercise in procrastination, written in Rust ?? . This currently

Ashvin Arsakularatne 3 Apr 8, 2022
A CLI tool which can help you automatically kill process of your choice. Useful for freeing up memory and CPU usage!

Quickiller There are always programs such as chrome that keep eating up your resources even when closed! The only way to prevent this is to kill all o

Codingsquirrel 1 Dec 8, 2021