wordsmith-cli
Command‑line word lookup tool with multiple sources: formal dictionary (dictionaryapi.dev), Urban Dictionary, Datamuse (synonyms/antonyms), and a Gen Alpha dictionary. Records your lookups to Markdown/JSONL logs and can render the log with glow if available.
Features
- Formal definitions via dictionaryapi.dev
- Slang/colloquial definitions via Urban Dictionary
- Thesaurus lookups (synonyms/antonyms) via Datamuse
- Optional Gen Alpha lookup via gen_alpha_dictionary
- Markdown and JSONL logging with timestamps
- View the log in the terminal (uses
glowwhen installed; falls back to plain text) - Tilde expansion for
--log-dir(e.g.,~/.local/share/...)
Note: There is no configuration file and no offline cache at present.
Installation
Usage
Word lookup CLI: formal defs, Urban Dict, synonyms/antonyms, logs
Usage: wordsmith-cli [OPTIONS] [WORD]
Arguments:
[WORD] The word to define
Options:
--log View the log instead of looking up a word
--formal Run formal dictionary lookup
--urban Run Urban Dictionary lookup
--thesaurus Run thesaurus (synonyms/antonyms)
--gen-alpha Run Gen Alpha dictionary lookup
--no-log Do not record this lookup
--log-dir <LOG_DIR> Directory for log.md and log.jsonl [default: ~/.local/share/wordsmith-cli]
-h, --help Print help
Behavior
- If no feature flags are provided (no
--formal/--urban/--thesaurus/--gen-alpha), the tool runs all lookups that are supported. - Lookups are logged unless
--no-logis provided. --logshows the log instead of performing a lookup.
Examples
Run everything (formal, Urban, thesaurus, Gen Alpha if compiled/available):
Formal dictionary only:
Urban Dictionary only:
Thesaurus (synonyms/antonyms) only:
Gen Alpha dictionary only:
Skip logging for a single lookup:
Specify a custom log directory:
View the log (uses glow --width 200 when available, otherwise prints the file):
Output & Logging
Lookups print definitions and, when available, an example section plus Synonyms and Antonyms lists.
Two log files are maintained (created as needed) under --log-dir (default: ~/.local/share/wordsmith-cli):
-
log.md— Markdown table: -
log.jsonl— one JSON object per line, including flags indicating which sources returned results.
Acknowledgements
gen_alpha_dictionary— additional dictionary sourceglow— pretty Markdown rendering in terminalclap— CLI parsingreqwest,serde,serde_json— HTTP/JSON plumbingchrono— timestampstextwrap— tidier text wrapping- Data/API sources: dictionaryapi.dev, urbandictionary.com, datamuse.com
License
MIT — see LICENSE.
Contributing
Issues and PRs are welcome.