wordloom
v0.3.0
Published
Generate short, word-like lowercase names and show meanings for dictionary matches.
Maintainers
Readme
wordloom
Generate short, word-like lowercase names from real English letter patterns.
wordloom gives you lowercase name ideas in a clean terminal table. If a result is also a real dictionary word, it shows the meaning next to it.
Good for:
- naming side projects, experiments, or folders
- exploring short word-like combinations
- finding names that start, end, or contain a certain pattern
- spotting real dictionary words among generated results
Quick usage
npx wordloom
npx wordloom --prefix no
npx wordloom --suffix ut
npx wordloom --contains abse
npx wordloom --length 6 --prefix absDefault length is 5. Supported lengths are 2 through 8.
Example:
npx wordloom --length 6 --contains abseOutput:
┌───┬────────┬──────────────────────────────────────────────┐
│ │ name │ meaning │
├───┼────────┼──────────────────────────────────────────────┤
│ 1 │ abseco │ │
│ 2 │ absect │ │
│ 3 │ absent │ verb: go away or leave; adjective: not │
│ │ │ being in a specified place │
└───┴────────┴──────────────────────────────────────────────┘If nothing matches, wordloom prints:
No results found.Why wordloom?
- Uses real English letter patterns derived from CMUdict, instead of fully random strings
- Adds meanings from WordNet when a generated result is also a real dictionary word
- Supports exact length, prefix, suffix, and contains filtering
- Prints results in alphabetical order in a readable terminal table
- Highlights dictionary matches in color in interactive terminals
Install
npm install -g wordloom
wordloom --helpYou can also run it without installing:
npx wordloom --contains abseOptions
-l, --length <number> Exact name length to generate (2-8, default: 5)
-c, --contains <text> Literal substring to require anywhere in the name
-p, --prefix <prefix> Literal starting prefix to validate and continue from
-s, --suffix <suffix> Literal ending suffix to require
-h, --help Show help
-v, --version Show versionMore examples
wordloom
wordloom --length 6
wordloom --contains abse
wordloom --prefix no
wordloom --suffix ut
wordloom --length 6 --prefix abs
wordloom --length 5 --prefix re --suffix tHow it works
wordloom is source-backed, but the idea is simple:
- it learns allowed letter transitions from CMUdict
- it generates names that follow those learned patterns
- it looks up each generated result in WordNet
- if the result is a real dictionary lemma, it shows the meaning
That means the results are more word-like than random strings, but they are not guaranteed to be common words, proper names, or brand-safe names.
The checked-in generated model files already ship with the repo and the published package, so normal users do not need to run bun run derive:model.
For maintainers
Regenerating the model is only needed when refreshing the checked-in data sources:
bun install
bun run derive:model
bun run build
bun test
bun run lint
bun run format:checkGenerated data lives in bin/cmudict-model.ts and bin/wordnet-definitions.ts.
License
MIT
