Z
Zaid
Projects
Live

namepilot

Brute-force domain availability across .ai, .com, .io, .co and more. Paste candidate names and see what is free in seconds, streamed result by result.

nextjsdevtoolsstreamingtypescript

TL;DR

Drop in twenty names and six TLDs. namepilot asks each registry directly over RDAP and streams every answer back the moment it lands.


Overview

namepilot takes a list of candidate names and a list of TLDs and checks every combination against the registries themselves, streaming each verdict to the browser as it arrives. Naming a company stops being one browser tab per domain.

Approach

- RDAP, not WHOIS scraping: the IANA RDAP bootstrap file maps each TLD to its registry, and each domain is queried directly. RDAP returns structured JSON (RFC 7480), so a 404 means available, a 200 means taken, and anything else is reported honestly as unknown
- Streamed results: POST /api/check is a streaming Route Handler on the Node runtime that answers in NDJSON, one JSON object per line: a meta line with the totals, one result line per domain with status, registrar and expiry where known, then done
- Stack: Next.js 16 App Router, React 19, Tailwind CSS v4
- Concurrency tuned per registry: default concurrency is six because the .ai registry rate-limits aggressively

Key Decisions

- Three states, not two: timeouts, rate limits and registry errors are reported as unknown instead of being guessed either way, so a user never buys a name on a false positive or skips one on a false negative.
- Stream instead of batch: with dozens of lookups in flight, the first answers arrive in under a second. Waiting for the slowest registry before showing anything would have made the tool feel broken.

Notes

RDAP is fast but not the source of truth for premium-priced domains. Confirm on the registrar checkout before paying.

Related