skillfed

PyGithub

Use the full Github API v3

pygithub Copyleft license Active 7,760 v2.9.1 released

Install

pygithub on PyPI

pip

pip install pygithub

uv

uv add pygithub

poetry

poetry add pygithub

Package facts

License not declared (copyleft)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 5 — pynacl, requests, pyjwt, typing-extensions, urllib3
Maintenance actively maintained — 121 days since the last release
Last repo commit
First released
Popularity one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: pygithub-2.9.1-py3-none-any.whl

Keywords: github

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Topic :: Software Development

About PyGithub

from the package's own PyPI description — quoted content, verbatim

PyGitHub

PyPI (image) CI (image) readthedocs (image) License (image) Slack (image) Open Source Helpers (image) codecov (image) Code style: black (image)

PyGitHub is a Python library to access the [GitHub REST API]. This library enables you to manage [GitHub] resources such as repositories, user profiles, and organizations in your Python applications.

[GitHub REST...

Read as markdown · JSON record · Source repository · Docs

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

PyGithub is a Python library that wraps the GitHub REST API, letting you programmatically manage repositories, user profiles, organizations, and other GitHub resources from Python code.

Low install friction with a pure-Python wheel and five lightweight runtime dependencies. Actively maintained with a recent release 121 days ago and ongoing commits; 7760 GitHub stars and production-stable status signal solid upkeep.

Licensed under LGPL (copyleft), which requires that derivative works and modifications remain open-source under the same license. Permissible for proprietary applications that only link to PyGithub without modifying it, but any changes to the library itself must be shared.

Usage

pip install PyGithub

from PyGithub import Github, Auth

auth = Auth.Token("your_access_token")
g = Github(auth=auth)
for repo in g.get_user().get_repos():
    print(repo.name)
g.close()

Requires Python 3.9 or later; GitHub authentication token or credentials must be provided.

Verdict: PyGithub is a mature, actively maintained library (production-stable, 7760 stars) with low install friction and no known vulnerabilities. The LGPL copyleft license is permissive for linking but requires source-sharing if you modify the library itself. Suitable for GitHub automation and integration tasks in Python 3.9+.

Needs verification

  • Whether pynacl requires system-level cryptography libraries that may complicate installation on some platforms.
  • Rate-limiting behavior and whether the library handles GitHub API throttling transparently or requires explicit backoff logic.
github api python clientgithub rest api wrappermanage github repositories programmaticallygithub automation pythonaccess github resources pythongithub enterprise api clientpython github integration

Similar packages