Skip to main content

Rust-powered Python web framework — 10x faster than FastAPI

Project description

Ignyx Logo
Ignite your API. Built in Rust, runs in Python.

PyPI version Downloads CI status Coverage Python versions Docs

Ignyx

📖 Full Documentation

Ignyx is a next-generation Python web framework engineered for maximum throughput, utilizing a Rust-powered HTTP core built on Hyper and Tokio. It provides a familiar, FastAPI-like decorator syntax, allowing developers to build high-performance APIs with zero learning curve. In honest benchmarks, Ignyx operates 8-9x faster than standard Python async frameworks.

Features

  • Blazing Fast: 8-9x faster than FastAPI in standard benchmarks.
  • Zero Overhead: Owns the full HTTP pipeline — no ASGI overhead.
  • Hot Reload: Blazing fast development with built-in file watcher.
  • Pydantic v2: Deep integration for request body validation.
  • Advanced OpenAPI: Auto-generates schemas with Pydantic model support.
  • Dependency Injection: Familiar Depends() pattern for clean logic.
  • WebSockets: Native, high-concurrency WebSocket support.
  • Modular: Organize APIs with Router prefixes.
  • Typed: Shipped with py.typed for perfect IDE autocompletion.

Benchmark

Apple M2, wrk -t4 -c100 -d10s

Endpoint Ignyx FastAPI Speedup
/plaintext 51,771 req/s 5,846 req/s 🔥 8.8x
/json 37,138 req/s 4,844 req/s 🔥 7.6x
/users/{id} 43,261 req/s 5,306 req/s 🔥 8.1x

Note: Ignyx tested with native Rust core. FastAPI tested with Uvicorn single worker — standard config.

Installation

pip install ignyx==2.12.0

Or with uv:

uv add ignyx

Quickstart

from ignyx import Ignyx

app = Ignyx()

@app.get("/")
async def root(request):
    return {"message": "Hello from Ignyx!"}

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=8000, reload=True)

Feature Examples

Pydantic Validation
from ignyx import Ignyx
from pydantic import BaseModel

app = Ignyx()

class User(BaseModel):
    name: str
    age: int

@app.post("/users")
async def create_user(user: User):
    return {"status": "success", "data": user.model_dump()}
Path + Query Parameters
from ignyx import Ignyx

app = Ignyx()

@app.get("/users/{id}")
async def get_user(id: int, format: str = "json"):
    return {"id": id, "format": format}
Dependency Injection
from ignyx import Ignyx, Depends

app = Ignyx()

def get_db():
    db = Database()
    try:
        yield db
    finally:
        db.close()

@app.get("/users")
async def get_users(db = Depends(get_db)):
    return db.query("SELECT * FROM users")
WebSockets
from ignyx import Ignyx

app = Ignyx()

@app.websocket("/echo")
async def echo_server(ws):
    await ws.accept()
    while True:
        data = await ws.receive_text()
        await ws.send_text(f"Echo: {data}")

Comparison vs FastAPI

Feature Ignyx FastAPI
Pydantic v2 validation
Async/Await
Dependency Injection
WebSockets
Modular Routers
Performance (req/s) ~50k ~6k
ASGI overhead ❌ None ✅ Yes
Hot Reload
Native Rust Core

Contributing

We welcome contributions! Please see our Contributing Guide for details on how to set up your development environment.

Deployment Note

Ignyx manages its own Tokio runtime. No Uvicorn or Gunicorn needed. Just python app.py.

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ignyx-2.12.0.tar.gz (2.8 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ignyx-2.12.0-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

ignyx-2.12.0-cp313-cp313-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

ignyx-2.12.0-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

ignyx-2.12.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ignyx-2.12.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

ignyx-2.12.0-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

ignyx-2.12.0-cp313-cp313-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

ignyx-2.12.0-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

ignyx-2.12.0-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

ignyx-2.12.0-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

ignyx-2.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ignyx-2.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

ignyx-2.12.0-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ignyx-2.12.0-cp312-cp312-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

File details

Details for the file ignyx-2.12.0.tar.gz.

File metadata

  • Download URL: ignyx-2.12.0.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ignyx-2.12.0.tar.gz
Algorithm Hash digest
SHA256 179564644c4453e2e00d1a83fcd508a82bec3b216919d388f146e17a147ee1a9
MD5 01df903f5bfec63e3cdfa8ac6c23adaf
BLAKE2b-256 3242152421ea6e7b17ef8b5c4c5b91626cf2221ea245391ef915877265edb627

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0.tar.gz:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ignyx-2.12.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c63841a13c6d3fdab571552d40a1d7741fc359b57b06c28b9007375df7815f5a
MD5 b7d1af17d2a93a93c0aeef2d9f96e573
BLAKE2b-256 747033d1108be407e8f565bdb5a93559a63135fad8ea5f8ef4209007805b2679

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1cdaed0df4186bd657864778f8eb0ca00d839085e8ddda2cff097645859b57ce
MD5 dccd370862d1e85cd6519e944097c727
BLAKE2b-256 8508b78639d254eb1d89c192286b167524babfe982299108e8ac4d9882e165d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9d96a453ad07689890a38af1ea005b051eb36b1d51f447f897e2fef78220aeff
MD5 b8db545e51f7d6c5a44aa66b330c592a
BLAKE2b-256 3881cc7fd550982b2425b7d3007ddadb5d42dd58ac997d5454a56950713a52b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee21a419492591550d0348a401061e2ffe30fb96ba99d4cccb603f923c4b3b66
MD5 010553c11f2bec5096bdc8b8069f781e
BLAKE2b-256 1a4dc38394787cdb19683335deb5412677c21875f68d4b0cd8edc32c4dc603f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8c5417b000510f40440bf9963987adba1d39a1bf511efbe43d334905027a9150
MD5 f343ef7d92eb10c5091ea812649b0b90
BLAKE2b-256 2c9b1d76a3604a08a34f0ec00a67b6ec4409e853a05fb1fc3aadc3d6284f9732

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93ea6f13fdf8d4abb420ba63e1023d0a8f933eaad5c5668738a6f2d3403f6f05
MD5 dcbec423e891664677c0935c14329a75
BLAKE2b-256 6b739105b672db93f54dadee25da338d95aa1b72f1b1cd5bfc204bf8bb47d784

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ed9b6161c65532a96ebaaa62f56c2528619464ca463dda4437bd2b31bbba1b7a
MD5 c432ecd904137d4487025140baa9aab8
BLAKE2b-256 dfae23264b3ccdb7a5bce76fa562540a647b5efca806ef213fe415be4e8ec089

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ignyx-2.12.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c5c8d0f1b58eeed98304633941a8624b76eaefc1236329ce5c19060bae4d0838
MD5 281f3e1819df0a48a586781108ed275e
BLAKE2b-256 8efbbb394dcc59937780661f8cbf944fe06d97f76710b2743c58b3504deda9ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5a1a4a2d03d405031cb5a62746b275ab3737e6cbccc650f7dce9076bd1f540ae
MD5 b9467aba4d49e88cb965cd819843fec0
BLAKE2b-256 be87c618d23d6c7c866cff13df9ac0f0d283fa0c43d64f2deb5cc3d9aad68486

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 651f1d30b0ad8be2fd5c274a9f4466d92f827c5d23d6af953407ec99d35f345a
MD5 7d0fb5242ac277fc72ce959cab0d09dc
BLAKE2b-256 c817ad0beef718c6721ff8e1bbbb2c9806017f023776c36185f5414df8b88869

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ffe4af160b2ab1f481bb7ac78963cf94d921ccb38f367e25cdc9b2071a10962a
MD5 212c748f398400add654aad17d21fa14
BLAKE2b-256 dadc5f3739cb4a2b94fa19ef4fd3f018cbbcc3978eb1fb820639a2226738861d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b6b3cbe24d9e4a189cbb7506151eee1f6b8f9b86e58812e39a137d814a2dc278
MD5 7136ac1b0184f094abf2c9b95fe064e7
BLAKE2b-256 2736cd73cddceee0f2a2b57f8dc2e2d8d8701f4ff09d17bc08a6ce05c9d8abc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 52b334a010839dbb050a9b3641237205ec4ccc4ddc4eaf62a129c8d70a19d18f
MD5 b14ea9cc566ca1c9fd4f285f7eb5139a
BLAKE2b-256 fde786444761b01b6398662a462f4cbd636224c5a25f961bf1279998b509cf21

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ignyx-2.12.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.12.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2c6fb99c383f39d5747340bd5b46f340ee2c4a94a2f926cb453534d271e563cc
MD5 41489d11cea90a70976d6d4fb1e8ab86
BLAKE2b-256 46a821d353f3cfd9a1eafed48952fcc6c261290a5bc614217ea9755e6b1cfc75

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.12.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on sakethdevx/ignyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page