npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

wordloom

v0.3.0

Published

Generate short, word-like lowercase names and show meanings for dictionary matches.

Readme

wordloom

Generate short, word-like lowercase names from real English letter patterns.

Twitter npm downloads stars license

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 abs

Default length is 5. Supported lengths are 2 through 8.

Example:

npx wordloom --length 6 --contains abse

Output:

┌───┬────────┬──────────────────────────────────────────────┐
│   │ 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 --help

You can also run it without installing:

npx wordloom --contains abse

Options

-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 version

More 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 t

How 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:check

Generated data lives in bin/cmudict-model.ts and bin/wordnet-definitions.ts.

License

MIT