Prod0

Free tool

Package name
availability checker.

One search across npm, PyPI, Cargo, GitHub, Homebrew, and 8 more registries. Skip the tab juggling before you name a project.

Supported registries

Every check runs against all 13 registries in parallel. Grouped so you can spot conflicts by target platform at a glance.

Language registries

npm iconnpmPyPI iconPyPICargo iconCargoRubyGems iconRubyGemsHomebrew iconHomebrewGitHub iconGitHub

Windows package managers

Scoop iconScoopChocolatey iconChocolatey

Linux app distributions

Flathub iconFlathubAUR iconAUR

Linux distro packages

apt (Debian) iconapt (Debian)dnf (Fedora) icondnf (Fedora)pacman (Arch) iconpacman (Arch)

How to use it

Type your project name and click check. The tool queries the official registry for every package manager in parallel and reports what each one shows in a second or two.

Green means the name looked available on that registry when you checked. Red means the name is already published there. Yellow means the check couldn't complete, usually a temporary network hiccup that clears on a retry.

Availability is a snapshot, not a reservation. Anyone can publish under the same name a minute after your check. If a name comes back free and you want it, claim it right away by publishing a placeholder: npm and PyPI accept minimal packages, GitHub reserves your handle when you create the org or user, Homebrew and distro packages require a PR to the upstream repo.

Common questions

What are the rules for a valid package name?

Rules vary per registry, but a lowercase name with hyphens as separators works everywhere. npm requires lowercase, allows hyphens and underscores, and blocks names with dots at the start or non-URL-safe characters. PyPI normalizes hyphens and underscores to the same canonical name during install. Cargo, Homebrew, and Linux distro packages stick to lowercase-with-hyphens by convention.

Should package names use hyphens or underscores?

Hyphens. They read cleaner in URLs, work in every registry, and match convention across npm, PyPI, Cargo, Homebrew, and Linux package repos. PyPI normalizes both to the same name during install, but the canonical listing uses hyphens. Underscores are legal in most registries but signal 'this is a Python-only package' when used in npm, which reads odd.

How do I check if a GitHub username is available?

Type the name into the checker above. GitHub is one of the 13 registries checked. The tool queries both the org endpoint and the user endpoint in parallel and reports green if both come back 404. Once a name shows free, register the org or user right away. GitHub reserves the handle the moment you create the account.

How do I reserve a package name without publishing?

You can't hold a name without publishing something on npm or PyPI. Publish a placeholder: on npm, run `npm publish` with a minimal package and a README noting it's reserved. On PyPI, push a 0.0.1. GitHub handles are reserved when you create the org or user, no code needed. Homebrew and Linux distros require a PR to their upstream repo, so those can't be reserved by outsiders.

What if my name is too similar to an existing package?

npm blocks names that differ from existing packages only by case, punctuation, or common typos. Its similarity check surfaces at publish time, not before. If your intended name gets rejected, add a distinct prefix or suffix like your brand or handle. PyPI is looser on similarity but users still complain about typo-squat risk, so pick something visually distinct from popular packages in the same ecosystem.