库简介
可以使用库来扩展和简化应用程序与 GitHub API 交互的方式。 每个库都为特定编程语言提供预生成的代码。 将库集成到项目中后,可以使用预生成的代码模块通过特定编程语言与 GitHub API 交互。
GitHub 负责维护某些语言的官方 Octokit 库。 还有第三方库可与 GitHub 的 API 一起使用,GitHub 不负责维护这些库。
官方 GitHub 库
GitHub 负责维护 GitHub API 的这些官方客户端库。 这些存储库为开放源代码,欢迎社区贡献。
有关详细信息,请参阅 使用 REST API 和 JavaScript 编写脚本 和 使用 REST API 和 Ruby 编写脚本。
- JavaScript:octokit.js
 - Ruby:octokit.rb
 - .NET:octokit.net
 - Terraform:terraform-provider-github
 
第三方库
以下是可用于以各种编程语言与 GitHub API 进行交互的第三方库示例。
GitHub 不负责维护这些第三方库。 第三方提供的库受单独的服务条款、隐私政策和支持文档管辖。
Clojure
- Tentacles:clj-commons/tentacles
 
Dart
- github.dart:SpinlockLabs/github.dart
 
Emacs Lisp
- gh.el:sigma/gh.el
 
Go
- go-github:google/go-github
 
Haskell
- haskell-github:haskell-github/github
 
Java
- GitHub API for Java,GitHub API 的面向对象的表示形式:hub4j/github-api
 - JCabi GitHub API,基于 Java7 JSON API (JSR-353),可简化使用运行时 GitHub stub 的测试,并覆盖整个API:github.jcabi.com(个人网站)
 
JavaScript
- NodeJS GitHub 库:pksunkara/octonode
 - 关于 GitHub API 的 Github.js 包装器:github-tools/github
 - 适用于 Browser 或 NodeJS 的基于 Promise 的 CoffeeScript 库:philschatz/github-client
 
Julia
- GitHub.jl: JuliaWeb/GitHub.jl
 
OCaml
- ocaml-github: mirage/ocaml-github
 
Perl
- Pithub:plu/Pithub
 - Net::GitHub:fayland/perl-net-github
 
PHP
- PHP GitHub API:KnpLabs/php-github-api
 - GitHub Joomla! 包:joomla-framework/github-api
 - GitHub bridge for Laravel:GrahamCampbell/Laravel-GitHub
 
PowerShell
- PowerShellForGitHub:microsoft/PowerShellForGitHub
 
Python
- gidgethub:gidgethub/gidgethub
 - ghapi:fastai/ghapi
 - PyGithub:PyGithub/PyGithub
 - libsaas:duckboard/libsaas
 - github3.py:sigmavirus24/github3.py
 - agithub:mozilla/agithub
 - github-flask:github-flask(官方网站)
 - githubkit:yanyongyu/githubkit
 - octokit.py:khornberg/octokit.py
 
Ruby
- GitHub API Gem:piotrmurach/github
 
Rust
- Octocrab:XAMPPRocky/octocrab
 
Scala
- Github4s:47deg/github4s
 
Shell
- ok.sh:whiteinge/ok.sh