@siddhaartha_bs/monkcli
v0.1.3
Published
CLI typing test inspired by Monkeytype.
Downloads
59
Readme
monkcli
CLI typing test inspired by Monkeytype.
Requirements
- Node.js 20+
- npm
Install
npm
npm install -g @siddhaartha_bs/monkcli
monkcliIf your npm global install tries to write to a system directory and asks for sudo,
prefer a user-local npm prefix instead of installing with elevated privileges:
mkdir -p "$HOME/.local"
npm config set prefix "$HOME/.local"
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrcThen install again:
npm install -g @siddhaartha_bs/monkclinpx
npx @siddhaartha_bs/monkcliUpgrade
npm install -g @siddhaartha_bs/monkcli@latest@latest means the latest version published to npm, not the latest local commits on main.
Check Version
Check the installed CLI version:
monkcli --versionCheck the latest published npm version:
npm view @siddhaartha_bs/monkcli versionUninstall
npm uninstall -g @siddhaartha_bs/monkcliSource Development
npm install
npm run build
node ./bin/monkcli.mjsFor interactive local development without a full rebuild:
npm run devIf monkcli Is Not Found
This is usually a PATH issue with your npm global bin directory.
npm prefix -gMake sure the corresponding bin directory is on your PATH:
- Linux:
$(npm prefix -g)/bin - macOS:
$(npm prefix -g)/bin - Windows: the prefix directory reported by
npm prefix -g
Where Data Is Stored
monkcli writes three files:
results.json(test history)stats.json(running totals + average WPM/accuracy)settings.json(saved language/mode/options)
Default locations:
- Linux:
- results/stats:
~/.local/state/monkcli/ - settings:
~/.config/monkcli/
- results/stats:
- macOS:
- results/stats/settings:
~/Library/Application Support/monkcli/
- results/stats/settings:
- Windows:
- results/stats:
%LOCALAPPDATA%\\monkcli\\ - settings:
%APPDATA%\\monkcli\\
- results/stats:
Overrides:
MONKCLI_DATA_DIRoverrides results + stats directory.MONKCLI_CONFIG_DIRoverrides settings directory.
Docker (Optional)
docker build -t monkcli:local .
docker run --rm -it monkcli:local