Skip to main content

pyfj

A fully typed Python client for the Forgejo API — async-first, with a complete sync mirror.

Install

uv add forgejo-python

or with pip:

pip install forgejo-python

The distribution is forgejo-python; the import name is pyfj:

from pyfj import Forgejo

with Forgejo("https://codeberg.org", token="...") as client:
    repo = client.repos.get("forgejo", "forgejo")
    for issue in client.repos.issues.list("forgejo", "forgejo", state="open"):
        print(f"#{issue.number} {issue.title}")

What it is

  • Complete: every operation in the Forgejo 16 API is callable, generated from a vendored spec.
  • Typed: pydantic v2 models for every schema, annotations everywhere, py.typed.
  • Dual: Forgejo (sync) and AsyncForgejo (async) over httpx, identical surfaces.
  • Ergonomic: resource namespaces (client.repos.issues.create(...)), keyword arguments, lazy Paginated[T] lists, typed exceptions.
  • Reproducible: the generated surface is committed and CI fails on drift from the spec.
  • Tested against a real forge: unit tests plus integration tests against a Forgejo container.

Documentation

The documentation site lives at https://erdemhalil.github.io/forgejo-python/: getting started, guides, the generated API reference, and the engineering docs. It is versioned — stable tracks releases, dev tracks main.

In-repo references:

License

MIT

Metadata

Release files for forgejo-python 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for forgejo-python 0.1.0
File Size Uploaded
forgejo_python-0.1.0.tar.gz 131.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for forgejo-python 0.1.0
File Interpreter ABI Platform
forgejo_python-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 373.0 kB

Release files / forgejo_python-0.1.0.tar.gz

Download URL forgejo_python-0.1.0.tar.gz
Size 131.4 kB
Tags Source
SHA-256 checksum
How to use checksums
8531211b5eb9601a03fef984420b88990a9f5bbf12ed068a03bdbda992dea9eb
BLAKE2b-256 checksum
How to use checksums
4dd51e46572195f19fc8ffc04afd5ba0beac18da2581cdbf9e958f9e0f808cd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 14, 2026.

Transparency log

Release files / forgejo_python-0.1.0-py3-none-any.whl

Download URL forgejo_python-0.1.0-py3-none-any.whl
Size 241.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6e5dfef1af64d0e83af732961424232e88f41d5dd8fb7cc42f764f1866744ab9
BLAKE2b-256 checksum
How to use checksums
7d8c236a9ac63de5b829e68b8d3917cd9f080a3635c912fd7a4881f7927b0500
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 14, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page