
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@jakzo/aoc
Advanced tools
Full Advent of Code dev loop in a CLI which:

Install from binary below or (preferably) with Node like so:
npm i -g @jakzo/aoc
A few minutes before the challenge starts, open two terminals and run these commands:
# Terminal 1
aoc
# Terminal 2
aoc start js
This will prompt you for your session token if you haven't provided it before and save it in your operating system's credential manager.
From here the first terminal will:
input.txtAnd the second terminal will:
If you have Node.js installed the easiest way is with:
npm i -g @jakzo/aoc
Or if you prefer you can install the binary for your platform:
aoc-linux-x64 from the releases pagechmod +x aoc-linux-x64mv aoc-linux-x64 /usr/local/bin/aocaoc-macos-x64 from the releases pagechmod +x aoc-macos-x64 && xattr -d com.apple.quarantine aoc-macos-x64mv aoc-macos-x64 /usr/local/bin/aocaoc-win-x64.exe from the releases pagemkdir aoc (feel free to swap aoc for any directory you want to install it to)move aoc-win-x64.exe aoc\aoc.execd aoc && setx /M PATH "%PATH%;%CD%"See ./templates for a list of possible languages. Each folder name is a valid argument you can provide to aoc start.
You can also create local templates so you can use languages not built-in to this tool. To do this:
wip (case-insensitive) in their filename
aoc.json file in this directory to specify commands
{{TEMP_DIR}} to insert the path of a temporary directory for saving build outputaoc.json which compiles and runs the code in wip.c:
{
"commands": ["clang -o '{{TEMP_DIR}}/wip' wip.c", "'{{TEMP_DIR}}/wip'"]
}
aoc start ./my-template-folderThe tool also exposes individual commands in case you want to compose some functionality together with another tool. For example you can save the input for a challenge to another file with aoc input --year 2016 --day 5 > another-file.txt.
Documentation for individual commands can be found by running aoc --help:
$ aoc --help
Commands:
aoc Counts down, saves input, prints
description and prompts for
answers to the upcoming challenge
[default]
aoc start [language] Creates and run files from a
template for a language (does not
overwrite)
aoc login Prompts for a new session token
aoc template <output> Copies a template folder (does
not overwrite)
aoc countdown Counts down until the next
challenge starts then exits
aoc description Prints the description of a
challenge
aoc input Prints the input to a challenge
aoc submit [answer] Submits an answer to a challenge
aoc leaderboard <id> Outputs a CSV of times to
completion for a private
leaderboard
Options:
-y, --year The year of the challenge [number]
-d, --day The day of the challenge [number]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]
Individual commands can also be accessed from the npm module like:
const { printDescription } = require("@jakzo/aoc");
printDescription(2020, 5);
FAQs
Advent of Code CLI for reading, running and submitting.
We found that @jakzo/aoc demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.