A collection of React hooks for popular APIs, built on @tanstack/react-query.
React hooks for the npm registry API.
| Hook | Returns |
|---|---|
useNpmPackage(name) |
NpmPackument |
useNpmPackageVersion(name, version) |
NpmPackageVersion |
useNpmPackageLatest(name) |
NpmPackageVersion |
useNpmPackageVersions(name) |
NpmPackageVersion[] |
useNpmPackageDistTags(name) |
NpmDistTags |
useNpmPackageMaintainers(name) |
NpmPerson[] |
useNpmPackageDownloads(name, options?) |
NpmDownloadPoint |
useNpmPackageDownloadRange(name, options?) |
NpmDownloadRange |
useNpmMaintainer(username) |
NpmUser |
useNpmMaintainerPackages(username, options?) |
NpmSearchResult |
useNpmMaintainerPackagesInfinite(username, options?) |
InfiniteData<NpmSearchResult> |
useNpmSearch(text, options?) |
NpmSearchResult |
useNpmSearchInfinite(text, options?) |
InfiniteData<NpmSearchResult> |
useNpmUser(username) |
NpmAuthenticatedUser |
useNpmUserPackages(username, params?) |
NpmUserPackages |
React hooks for the GitHub REST API.
| Hook | Returns |
|---|---|
useGhUser(login) |
GitHubUser |
useGhUserRepos(login, params?) |
GitHubPagedResponse<GitHubRepository> |
useGhCurrentUser() |
GitHubUser |
useGhUserFollowers(login, params?) |
GitHubPagedResponse<GitHubUser> |
useGhUserFollowing(login, params?) |
GitHubPagedResponse<GitHubUser> |
useGhUserPublicEvents(login, params?) |
GitHubPagedResponse<GitHubEvent> |
useGhUserContributionMap(login, params?) |
ContributionCalendar |
useGhRepo(owner, name) |
GitHubRepository |
useGhRepoCommits(owner, name, params?) |
GitHubPagedResponse<GitHubCommit> |
useGhRepoBranches(owner, name, params?) |
GitHubPagedResponse<GitHubBranch> |
useGhRepoBranch(owner, name, branch) |
GitHubBranch |
useGhRepoTags(owner, name, params?) |
GitHubPagedResponse<GitHubTag> |
useGhRepoReleases(owner, name, params?) |
GitHubPagedResponse<GitHubRelease> |
useGhRepoLatestRelease(owner, name) |
GitHubRelease |
useGhRepoForks(owner, name, params?) |
GitHubPagedResponse<GitHubRepository> |
useGhRepoContents(owner, name, path?, params?) |
GitHubContent | GitHubContent[] |
useGhRepoRaw(owner, name, path, params?) |
string |
useGhRepoTopics(owner, name) |
string[] |
useGhRepoContributors(owner, name, params?) |
GitHubPagedResponse<GitHubUser> |
useGhRepoIssues(owner, name, params?) |
GitHubPagedResponse<GitHubIssue> |
useGhRepoPullRequests(owner, name, params?) |
GitHubPagedResponse<GitHubPullRequest> |
useGhRepoWebhooks(owner, name, params?) |
GitHubPagedResponse<GitHubWebhook> |
useGhRepoAdvisories(owner, name, params?) |
GitHubPagedResponse<GitHubRepositoryAdvisory> |
useGhRepoAdvisory(owner, name, ghsaId) |
GitHubRepositoryAdvisory |
useGhCreateFork(owner, name) |
GitHubRepository |
useGhCreateIssue(owner, name) |
GitHubIssue |
useGhIssue(owner, name, number) |
GitHubIssue |
useGhIssueComments(owner, name, number, params?) |
GitHubPagedResponse<GitHubIssueComment> |
useGhPullRequest(owner, name, number) |
GitHubPullRequest |
useGhPullRequestCommits(owner, name, number, params?) |
GitHubPagedResponse<GitHubCommit> |
useGhPullRequestFiles(owner, name, number, params?) |
GitHubPagedResponse<GitHubPullRequestFile> |
useGhPullRequestReviews(owner, name, number, params?) |
GitHubPagedResponse<GitHubReview> |
useGhPullRequestReviewComments(owner, name, number, params?) |
GitHubPagedResponse<GitHubReviewComment> |
useGhPullRequestIsMerged(owner, name, number) |
boolean |
useGhMergePullRequest(owner, name, number) |
MergeResult |
useGhCreatePullRequestReview(owner, name, number) |
GitHubReview |
useGhRequestReviewers(owner, name, number) |
GitHubPullRequest |
useGhUpdatePullRequest(owner, name, number) |
GitHubPullRequest |
useGhAddPullRequestComment(owner, name, number) |
GitHubReviewComment |
useGhCommit(owner, name, ref) |
GitHubCommit |
useGhCommitStatuses(owner, name, ref, params?) |
GitHubPagedResponse<GitHubCommitStatus> |
useGhCommitCombinedStatus(owner, name, ref) |
GitHubCombinedStatus |
useGhCommitCheckRuns(owner, name, ref, params?) |
GitHubPagedResponse<GitHubCheckRun> |
useGhCommitComments(owner, name, ref, params?) |
GitHubPagedResponse<GitHubCommitComment> |
useGhCreateCommitStatus(owner, name, ref) |
GitHubCommitStatus |
useGhAddCommitComment(owner, name, ref) |
GitHubCommitComment |
useGhOrg(name) |
GitHubOrganization |
useGhOrgRepos(name, params?) |
GitHubPagedResponse<GitHubRepository> |
useGhOrgMembers(name, params?) |
GitHubPagedResponse<GitHubUser> |
useGhSearchRepos(q, params?) |
GitHubPagedResponse<GitHubRepository> |
useGhAdvisories(params?) |
GitHubPagedResponse<GitHubAdvisory> |
useGhAdvisory(ghsaId) |
GitHubAdvisory |
useGhAdvisoryByCve(cveId) |
GitHubAdvisory | null |
useGhGist(gistId, options?) |
GitHubGist |
useGhGists(params?, options?) |
GitHubPagedResponse<GitHubGist> |
useGhGistsInfinite(params?, options?) |
InfiniteData<GitHubPagedResponse<GitHubGist>> |
useGhGistCommits(gistId, params?) |
GitHubPagedResponse<GistCommit> |
useGhGistForks(gistId, params?) |
GitHubPagedResponse<GistFork> |
useGhGistComments(gistId, params?) |
GitHubPagedResponse<GistComment> |
useGhGistIsStarred(gistId) |
boolean |
useGhCreateGist() |
GitHubGist |
useGhUpdateGist(gistId) |
GitHubGist |
useGhDeleteGist(gistId) |
void |
useGhForkGist(gistId) |
GitHubGist |
useGhStarGist(gistId) |
void |
useGhUnstarGist(gistId) |
void |
useGhAddGistComment(gistId) |
GistComment |
useGhUpdateGistComment(gistId) |
GistComment |
useGhDeleteGistComment(gistId) |
void |
React hooks for the Bundlephobia API.
| Hook | Returns |
|---|---|
useBpPackageSize(name, options?) |
BundleSize |
useBpPackageVersionSize(name, version, options?) |
BundleSize |
useBpPackageHistory(name, options?) |
PackageHistory |
useBpPackageSimilar(name, options?) |
SimilarPackages |
React hooks for the OSV (Open Source Vulnerabilities) API.
| Hook | Returns |
|---|---|
useOsvVuln(id, options?) |
OsvVulnerability |
useOsvQuery(params, options?) |
OsvQueryResult |
useOsvQueryBatch(queries, options?) |
OsvBatchQueryResult |
All packages require the following peer dependencies:
| Peer dependency | Version |
|---|---|
react |
>=19.0.0 |
@tanstack/react-query |
^5.0.0 |
MIT © ElJijuna