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.0.tar.gz (21.6 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.0-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nmavail-0.4.0.tar.gz
  • Upload date:
  • Size: 21.6 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.0.tar.gz
Algorithm Hash digest
SHA256 5243bcf94efd6094c6c8ca6687821f40fbf70ed3d8365c42c019dde8fe67adc2
MD5 f35a724ebefa637150c802d7fd12e5f1
BLAKE2b-256 b3d39c7ce8572befa6fbd05e65044e0731321947a8f531a544e5068b348c8e94

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nmavail-0.4.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4aac4fa456c2c10d9d0b1c0c1d797e193a62fcf42c2a5b3faaddcffdff6a3bb3
MD5 9d023d61570ab28bda42ad53197fcbb6
BLAKE2b-256 5099b6ccaae1b4250280570fb792ebc3bf87000502bad430bbbe3b9c7bc7f91b

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