What it does
Checks whether a given username/handle is already taken on several popular platforms at once — GitHub, X (Twitter), Instagram, TikTok, Reddit, YouTube, Twitch, and Pinterest — by making an HTTP request to each platform from the server and inspecting the response.
This is useful when you're picking a new handle for a project, a brand, or yourself, and want to quickly know where it's still free without opening eight tabs and typing the same name over and over.
Try it
How it works
- Your browser sends the username to
/api/tools/username-checker. - The server (
tools/username-checker/server.js) fires an HTTP request to each platform's public profile URL (e.g.https://github.com/<username>) in parallel, using each platform's HTTP status code (and in some cases response body heuristics) to decide whether the username is taken, available, or unknown (when the platform's response is ambiguous or the request fails/times out). - Results are returned as JSON and rendered as a list, one row per platform, with a colored status.
Platforms checked
| Platform | Method |
|---|---|
| GitHub | GET https://github.com/<username> — 404 = available |
| X (Twitter) | GET https://x.com/<username> — 404/redirect heuristics |
GET https://www.instagram.com/<username>/ — status + body check | |
| TikTok | GET https://www.tiktok.com/@<username> — status + body check |
GET https://www.reddit.com/user/<username>/about.json — JSON API | |
| YouTube | GET https://www.youtube.com/@<username> — status + body check |
| Twitch | GET https://www.twitch.tv/<username> — status + body check |
GET https://www.pinterest.com/<username>/ — status + body check |
Notes
- Rate limiting & blocking: Some platforms aggressively rate-limit or block automated requests (even a simple
GET), especially Instagram, TikTok, and X. When a platform blocks or times out, the result is shown as "Unknown" rather than a false "available" or "taken" — never trust a single tool's result as 100% certain, always double-check manually before committing to a name. - Case sensitivity: most platforms treat usernames as case-insensitive, so the check normalizes to lowercase.
- No data is stored: the username you check is sent directly to each platform's public profile page (the same page anyone could open in a browser) and is not logged or stored by PiliBox.
- Timeouts: each platform check has a hard timeout (7 seconds) so one slow/unreachable platform never blocks the whole result.