Skip to content

ElJijuna/api-hooks

Repository files navigation

api-hooks

A collection of React hooks for popular APIs, built on @tanstack/react-query.

CI License: MIT TypeScript

Packages

React hooks for the npm registry API.

npm npm downloads

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
useNpmSearch(text, options?) NpmSearchResult

React hooks for the GitHub REST API.

npm npm downloads

Hook Returns
useGhUser(login) GitHubUser
useGhUserRepos(login, params?) GitHubPagedResponse<GitHubRepository>
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>
useGhRepoForks(owner, name, params?) GitHubPagedResponse<GitHubRepository>
useGhRepoContents(owner, name, path?, params?) GitHubContent | GitHubContent[]
useGhRepoTopics(owner, name) string[]
useGhRepoContributors(owner, name, params?) GitHubPagedResponse<GitHubUser>
useGhRepoIssues(owner, name, params?) GitHubPagedResponse<GitHubIssue>
useGhRepoPullRequests(owner, name, params?) GitHubPagedResponse<GitHubPullRequest>
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>
useGhCommit(owner, name, ref) GitHubCommit
useGhCommitStatuses(owner, name, ref, params?) GitHubPagedResponse<GitHubCommitStatus>
useGhCommitCombinedStatus(owner, name, ref) GitHubCombinedStatus
useGhCommitCheckRuns(owner, name, ref, params?) GitHubPagedResponse<GitHubCheckRun>
useGhOrg(name) GitHubOrganization
useGhOrgRepos(name, params?) GitHubPagedResponse<GitHubRepository>
useGhOrgMembers(name, params?) GitHubPagedResponse<GitHubUser>
useGhSearchRepos(q, params?) GitHubPagedResponse<GitHubRepository>

React hooks for the Bundlephobia API.

npm npm downloads

Hook Returns
useBpPackageSize(name, options?) BundleSize
useBpPackageVersionSize(name, version, options?) BundleSize
useBpPackageHistory(name, options?) PackageHistory
useBpPackageSimilar(name, options?) SimilarPackages

Requirements

All packages require the following peer dependencies:

Peer dependency Version
react >=19.0.0
@tanstack/react-query ^5.0.0

License

MIT © ElJijuna

About

A collection of React hooks for popular APIs (npm, GitHub, Bundlephobia) built on TanStack Query. Provides typed, reusable hooks for data fetching, caching, and async state management with a simple and consistent API.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors