SMALL PACKAGE. BIG PERSONALITY.

Goodbye, random.
Hello, memorable.

Identifiers for people who think in words.
Turn a jumble of characters into something
you can actually say, share, and remember.

Zero dependenciesTypeScript readyMIT licensed
ANATOMY OF A GOOD ID001 / ∞
01Agileadjective
02Packetstech noun
03Connectverb
FRESH WORDS. NEW POSSIBILITIES.

01 / THE PLAYGROUND

Make it yours.

Pick a style. Find a name.
A fresh idea is one click away.

YOUR NEXT IDENTIFIERv5.0.8

Loading your next ID…

or press G
1,080,000possible combinations
10–37characters per ID
0runtime dependencies
TUNE THE DETAILS
Word separator
0 · just noun + verb4 · more personality

Runs entirely in your browser. These are random identifiers; check for collisions when uniqueness matters.

02 / A TINY ADDITION

Good names.
Two lines away.

Works in Node.js and browser bundles.
Bring a human touch to your next project.

MAKE ROOM FOR BETTER IDS
npm install tech-human-id

No runtime dependencies. Typed out of the box.
Yours to use under the MIT license.

View package on npm ↗
import { humanId } from "tech-human-id";

humanId(); // BrightBackendsBuild
This example follows your playground settings.

03 / UNDER THE HOOD

Small API.
Plenty of possibility.

Read the full documentation ↗
humanId(options?)

A fresh identifier, with your choice of separator, casing, adjective count, and optional adverb.

string
poolSize(options?)

The number of word combinations for your settings. More adjectives multiply the possibilities.

number
minLength / maxLength

Know the shortest and longest possible ID before it lands in your UI or database.

number
adjectives · nouns · verbs · adverbs

Explore the word lists that give every identifier its personality.

string[]

A FEW WORDS FROM THE NEIGHBORHOOD

agilepacketsconnectoptimally

04 / BEFORE YOU GO

A few good questions.

How many combinations are there?

The default word lists contain 75 adjectives, 150 tech nouns, and 96 verbs: 1,080,000 word combinations. Each extra adjective multiplies the pool by 75; an adverb multiplies it by 59. The playground calculates the pool for your settings.

Are the IDs unique?

Each call makes an independent random selection, so repeats are possible. If an ID must be unique, check it against existing records and retry on a collision. Different word combinations can also produce the same string when separators are omitted.

Where should I use them?

Readable labels for datasets, dev environments, demo projects, logs, or shared sessions. The generator uses Math.random(), so use a cryptographically secure generator for passwords, authentication tokens, and other secrets.

Can I contribute a word?

Absolutely. The word lists live in the data directory. Keep words short, family friendly, and relevant to tech, then open a pull request on GitHub.

A small detail.
A more human experience.

Make something memorable ↑