Library that checks if given username exists on popular internet services.
go get github.com/denis-kilchichakov/usernames@v0.7.0
Simple example:
package main
import (
"fmt"
"github.com/denis-kilchichakov/usernames"
)
func main() {
u := "username-to-check"
parallelism := 2
checkResults := usernames.CheckAll(u, parallelism)
fmt.Printf("Check results for username \"%s\":\n", u)
for _, r := range checkResults {
if r.Err != nil {
fmt.Printf("Error on %s: %v\n", r.Service, r.Err)
continue
}
fmt.Printf("%s: %v\n", r.Service, r.Found)
}
}
Output:
Check results for username "username-to-check":
gitlab: false
leetcode: false
instagram: false
stackoverflow: false
reddit: false
dockerhub: false
github: false
To launch sanity checks (which do requests to actual services instead of mocks in unit tests):
go test ./... -tags=sanity
For sanity test files to be processed correctly by VS Code, consider adding this to settings.json
:
"gopls.buildFlags": ["-tags=sanity"],
- GitHub
- GitLab
- Leetcode (Leetcode limited its GraphQL for external callers, no workaround yet)
- StackOverflow
- DockerHub
Inside package services
:
- Create subpackage for your service
- Implement
contract.ServiceChecker
interface - Add
registerService()
call ininit()
(services
package)
- CodeWars
- HackerRank
- Habr
- Kaggle
- Telegram
- X (Twitter)
- TikTok
- ...
- you name it