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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

ignyx-2.13.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.13.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.13.0-cp313-cp313-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.12+ x86-64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

ignyx-2.13.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.13.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.13.0-cp312-cp312-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

ignyx-2.13.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.13.0.tar.gz.

File metadata

  • Download URL: ignyx-2.13.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.13.0.tar.gz
Algorithm Hash digest
SHA256 4e2d509fb2e9b61ac0974708a4101e807ec227dbedd0d30d40b830e86a720d35
MD5 53f377b81434af12fef595412b3c8ed6
BLAKE2b-256 be19f0e5c43e3b7c6eb86a2f6195663eef3d543d7673edabfe5ee73b406528e3

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: ignyx-2.13.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.13.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e124ce4ab4f164fa96aedf0e6dbc8341411a97d27685ab4fb0c5b730903b1b56
MD5 be87efdd8d9e999b75c4bea217896584
BLAKE2b-256 17b49661cbfcf8698485d44892585f3ef7f1957963eec974c671cd782ab36b68

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fdac9f5a006952c6845535f319c1a4ee3bd32c5a7a57508cd3aaa3a65f8c6a89
MD5 5ed12bebe6e7ead90e529e286ee56b4f
BLAKE2b-256 dc62eb043f309fe50cfc3129c39cd06bcb5759b8c55f7109c5508f5e327acf72

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 565687aaad82801c413c5d3efa37312ea85076f0667b8f28a23359652fc77423
MD5 e4c71560355f229b69b89f03410718b9
BLAKE2b-256 0769fbed0ca3c9b4b211e4a37ec498bd547fb7a0d9cd48f8da8d1ff8b51b11a9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b4c1d316cc35b08dcb258dd7c641e8320c51ed744aa8c6c856d6c3ab5db50451
MD5 8ff3c9b11441ea704ca5c28ae11c3de3
BLAKE2b-256 30084b19198aec6bf70c6254b8f285ea001cb39388370ac55aee4b41e72fb763

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c6102131352dc120431aa79cbd2b2f1cfd73ae6d49993776e07922f191cb40df
MD5 23f9f2dc77ecab096abd46443ef6af02
BLAKE2b-256 181209c1e47f93ef9363ff0109deb6b6bb7b1435ad0a644954d60501cb9606c5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e7895f70f5872ce75b4e40da1d228defedeb789d72369a7ab25763a2fb3a13f1
MD5 f3b91ae40f7101b46029623d05923f90
BLAKE2b-256 efddc8d861f751f1b11fdf2730d02ea9526e50e9fe24e7ae0343f7fa1141b8f3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 75b6dfe1a1e021cd6fd75681f8a5cd766d8ce662f62de29e0c4460bb8072b534
MD5 19deb080f3d066f2ea263d782d7627c8
BLAKE2b-256 452214bf40ac6af82628b656b696defe104955d8fa431eee76f47b9f67360607

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: ignyx-2.13.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.13.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cadda57d415814cca563fff5cf29d61dbe552b755bfae67936670f334f93b492
MD5 0d008e837b0e6ec5f0e0d79dd7040df3
BLAKE2b-256 4c667cbe7d4783cf1ac472726d9dbee991cc596dffea33fd63afb4d9110d7ed3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bbf30f0782b39ab0df5918a79bc2c28b1620a7415ec913de27e9053b4afd3c82
MD5 84b7fad6b151f1dd3b92a13498c35813
BLAKE2b-256 b762d2b030ac2772d31aa2debc684e87551ba864a0c4bea3deaf5d039d47d8dc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0865d42edfca2b363809c271715137b15a8fae07cdc64512da4a5d3d0bd26ba1
MD5 25540069d2e2aa590c5e2635752d3909
BLAKE2b-256 7666409e7642ad4e971ed4ce85cf3ef23290486e612a8b0ca330b5023382b749

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6c33df37ef213306aa699f270f3cfd0124c4c38195a9aeb71a3f23eab4b7eaca
MD5 d8763cc8210407b3d3fee77878ac16e5
BLAKE2b-256 98368164c87bd0fc47cb288c3786b35edae43f452325c108251065147e4800db

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 10490802935152a2b338c1341d6701072578a77216b9e13a68810480367abf89
MD5 969c7d1450b7871f6d6484f7293d61bd
BLAKE2b-256 d775c805d67bcce84b02d8f1732c1f4ea6e02bf99e484afe8e67498f8206acf9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e60c1b7eecbdcb8ffc786be0a9b28bc76e41bf88efd676f99e1b2ff5c0033783
MD5 55bc1193f2d2e614b0c4122908b47bca
BLAKE2b-256 6f674e3862efbcebabf0d11b6c06a095c1430d62426b5d476099673aa7d699ad

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for ignyx-2.13.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0006dddc794225a9cbe14a84c76be23adbf58a4ed03f509fffe9fd613610b5fe
MD5 2ea08f4056c32ddca8c506933110b15a
BLAKE2b-256 54fceac9160011c0f134b47d65d4ce476526891758a3b83ee87e339ba0646642

See more details on using hashes here.

Provenance

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