Skip to main content

A powerful CLI tool to check name availability across domains and platforms

Project description

Nmavail

PyPI version License: MIT

Nmavail is a powerful command-line tool designed to check the availability of names across multiple domains and platforms. Whether you are naming a startup, a new project, or an open-source library, Nmavail helps you secure your brand identity by verifying if a name is already taken.

Features

  • Domain Availability: Checks popular TLDs (e.g., .com, .io, .dev, .ai) via WHOIS and DNS lookups
  • Developer Platforms: Verifies username availability on GitHub and GitLab
  • Package Registries: Checks if a name is available on PyPI, NPM, Crates.io, and Go Modules
  • System Packages: Checks Homebrew, AUR, Debian/Ubuntu, and Alpine Linux
  • Asynchronous & Fast: Uses async I/O to perform checks in parallel (~13 seconds total)
  • Clean CLI Interface: Provides a beautiful, easy-to-read terminal output with smooth loading animations
  • No Configuration Required: Works out of the box, no tokens or setup needed

Installation

Option 1: Install via uv (Recommended)

The easiest and recommended way to install Nmavail is using uv:

# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install nmavail (uv will automatically manage Python environment)
uv tool install nmavail

# Verify installation
nmavail --version

Option 2: Install via pipx

Alternatively, you can use pipx:

# Install pipx (if not already installed)
pip install pipx

# Install nmavail (pipx will create an isolated environment)
pipx install nmavail

# Verify installation
nmavail --version

Option 3: Run without installation

Try Nmavail without installing:

uvx nmavail test

Option 4: Install from Source

For developers or those who want the latest unreleased features:

git clone https://github.com/nmavail/nmavail.git
cd nmavail
uv sync  # or: pip install -e .
uv run nmavail test

Usage

Check Name Availability

To check a name across all supported platforms:

nmavail my-awesome-name

Example Output:

Package Registries:                                         
    ✗   PyPI                : Taken
    ✗   NPM                 : Taken
    ✓   Crates.io           : Available
    ✓   Go Modules          : Available

System Packages:                                            
    ✓   Homebrew            : Available
    ✓   Arch (AUR)          : Available
    ✓   Debian/Ubuntu       : Available
    ✓   Alpine Linux        : Available

Developer Platforms:                                        
  - GitHub:
    ✗   User/Org            : Taken
    ✗   Total Repos         : 9702854
    ✗   Top Stars           : 25920 stars
  - GitLab (list first 100 results only):
    ✗   User/Group          : Taken
    ✗   Total Repos         : 100+
    ✗   Top Stars           : more than 0 stars

Domains:                                                    
    ✗   my-awesome-name.com : Taken
    ✓   my-awesome-name.io  : Available
    ✓   my-awesome-name.dev : Available

Command Line Options

Show Version:

nmavail --version
nmavail -V

Show Help:

nmavail --help
nmavail -H

Examples:

nmavail test
nmavail google
nmavail myproject

Supported Platforms

Category Platforms
Domains .com, .org, .net, .io, .co, .dev, .app, .xyz, .ai, .me, .cn, .tv, .ly, .it
Developer Platforms GitHub (User/Org & Repo Search), GitLab (User/Group & Repo Search)
Package Registries PyPI, NPM, Crates.io, Go Modules
System Packages Homebrew, Arch (AUR), Debian/Ubuntu, Alpine Linux

Performance

  • Total check time: ~13 seconds (varies based on network conditions)
  • Parallel execution: All checks run concurrently
  • Smart pagination: GitLab limited to 1 page (100 results) for speed
  • Optimized timeouts: 10 second timeout per request

Development

This project uses Ruff for linting and formatting.

# Format code
uv run ruff format .

# Lint code
uv run ruff check .

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nmavail-0.4.1.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nmavail-0.4.1-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file nmavail-0.4.1.tar.gz.

File metadata

  • Download URL: nmavail-0.4.1.tar.gz
  • Upload date:
  • Size: 21.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nmavail-0.4.1.tar.gz
Algorithm Hash digest
SHA256 71a9d5b0f19d45ff14461fde99ab1432004c58f8c2129772e07ce5ffd358c33f
MD5 c1f7471f669a6045ac5205b615c592ed
BLAKE2b-256 402408cdd1af1b79048921cdf51bc001e081aeb6a7e468780d1429776814a814

See more details on using hashes here.

File details

Details for the file nmavail-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: nmavail-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 13.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nmavail-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a2f4fe9aec33dad7bbdfcd15ad1838ed08107c6f6060df364b58694f1a67e85c
MD5 0e107d5214e75078c429ad8352744ca0
BLAKE2b-256 220a1833ffd5d8e3c12479e5b28270e24ee94ff3c62c117cefd9959679459e13

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page