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.14.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.14.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.14.0-cp313-cp313-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.13Windows x86-64

ignyx-2.14.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.14.0-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

ignyx-2.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ignyx-2.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

ignyx-2.14.0-cp313-cp313-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.12+ x86-64

ignyx-2.14.0-cp312-cp312-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.12Windows x86-64

ignyx-2.14.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.14.0-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

ignyx-2.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ignyx-2.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

ignyx-2.14.0-cp312-cp312-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ignyx-2.14.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.14.0.tar.gz.

File metadata

  • Download URL: ignyx-2.14.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.14.0.tar.gz
Algorithm Hash digest
SHA256 6dda9234a5f9dea800630e793d1b090d662fdfa4510e8e375ce9e3d4ee53369f
MD5 5c2fe63ad059a9e5204319a7de772820
BLAKE2b-256 397c58866372d38577e6404f6e9d9c6b9c78491f5eee0e140ac2d27c809e5935

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: ignyx-2.14.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.5 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.14.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 50332af8c640fb2b7249cbf3201233183b64b27a9612437b86aa08e4cfa953ed
MD5 441ea10669b0822f26319264a9f7ffc8
BLAKE2b-256 c750b9f08370efe46774d9f2101bd19c124fcf82c27d7ecdb0d809dc26ad0a13

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1bb4cce87d98efbb83fca6a7806526fd4c41c10efff38cbfa6b4fbae975d5443
MD5 2733c86e0b79b10b6c58f43aeebc51b3
BLAKE2b-256 2bd422deac2bf396e92b1482aaefdc265aa8bdb031ec1dcfa9c9ba27717a4642

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bbe0f9b0086326ef46ea21c7da118a88b4c8f6fd6e95156ad78ef6ab8c0b69ca
MD5 4cf31b744b1b561929e928d2dbb5cfeb
BLAKE2b-256 656a79f111604ed06cad50caa25a9d20274b8622132fe7d2c0543c4e21981299

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 240a9fa037eab52f5af66c36391265f9e1822dfeccf7b92132074ca904700270
MD5 1db3d27ca614c45aa22c3b0c9885595e
BLAKE2b-256 822f4b69cec1b9180fdde7cd180fa2d50fa3c0e290cbffbd9e5c76fca8a27ed4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f41ef2fbc83a72e85cc8558eb29b43768cfa5aefa8d74462bfdfeb5e9f806ad3
MD5 f91a62230e04de123a59bf7c76c43352
BLAKE2b-256 710ca94a49cd0461315bb54da65060b2f15ef25c61e87c7ba7d1786bcee51845

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6c92311f07f4b15748b587064e9b25373c96ba2cde92fe3e9e4b826cd31fb93c
MD5 31449c49990bfcf1681db810b5618f9d
BLAKE2b-256 c7a88b37bcda8b17e83c54b35027ab25892824328ccd42ed903b53515d752902

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2145ff10cf7fe371e988d554181ef728caac056621d6d576535fab8f0f93bd15
MD5 b77a14239be4d11946f9ec411dba7b9f
BLAKE2b-256 81e69b460f17b1c66e0ab5e7d84db629a8381dfda20a7c7305a6eb3df50d3f94

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: ignyx-2.14.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.5 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.14.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 16d15bf572a44c64b142d58d56c6bbc54af2ee05eb0c9e0432c20eab79269049
MD5 3cce500935cde21f0e88e1df6e885b18
BLAKE2b-256 99fe45237369b3a483001fe34e8ff4527e6c8cba5c5b16567e4825d099c4d053

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d57f0ef613bab9a90bad76931505ef6913419681a74bac946a81c99f79bb16ae
MD5 43d3c586f7fc23cbfadf2e907f40bc8a
BLAKE2b-256 de7f9f3e2429bc275eb7a3befb5b77434c189af626ee85147f2ca1d36ebdceb4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 49ebb0de4b3e0c2f962600db931fcf6d50fd870527214a687cb2747cd168bbab
MD5 6598f2e7c0cc4dd64840924afb2f6db9
BLAKE2b-256 d30deb3fe17e95cc073068a2fb616b5a8266822f68fa938357d0e8e9ca832428

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29323fd85a2e067216459bca59df5fd3096284169ce43983ce8fbd55f9e84943
MD5 7c00e68155995134e14ecf3c6bf2e96e
BLAKE2b-256 01dcc9fce9009ac1c011c0007d4c15354c934dbd2b7a0c6bab0db4f2c9a9a60e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 31e8d76e86120afa51ce182f54eea74a4cae8097032196ec0dc2a53927399686
MD5 65a66017f92c50dff38af8b848b4f489
BLAKE2b-256 6b9af3a8a0fd72de11a2b23c572534e7427f9a77bc2894057a9396ba3b889027

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83fd4a3a61ba9dc03815bf1e72210b3ba9729885ffea8fc23059a747c3e61d6b
MD5 e8be4df0a2d5cb099ae45f548b7ec763
BLAKE2b-256 53d88f6b7ca7dfe25428c5ec38b38562a0de563a714b9db7136a9ff749e7472d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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.14.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ignyx-2.14.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f9986814ae61fdafea7d7bcec87edb6d71397096bff3fc22416c850324b56515
MD5 32b93302da1be1fc83d11f3bf143d864
BLAKE2b-256 210283a8fb30ff896446d4fe60f3ae913abfc2c8d029cdfc19f36eb06767f391

See more details on using hashes here.

Provenance

The following attestation bundles were made for ignyx-2.14.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