Skip to main content

RustAPI

RustAPI Logo

FastAPI-style Python Web Framework backed by a Rust (Tokio / Hyper) Engine — with embedded Rust Database Streaming, JWT & Argon2 Primitives, Tier 3 Rust-Native Routes, and a built-in MCP Server.

PyPI GitHub Repository License: MIT Python: 3.8+ Rust: 1.75+


📦 Key Open-Source Features Included

Feature Area Implementation Details
FastAPI Compatibility FastAPI & Request aliases, status codes, EventSourceResponse (SSE), jsonable_encoder, Query/Body/Path, OAuth2PasswordBearer, HTTPBearer, APIKeyHeader, OpenIdConnect, get_openapi, app.frontend().
HTTP & Routing FastAPI-style @app.get, @app.post, APIRouter, Depends, app.dependency_overrides, response_model, reload=True.
Rust-Native Tier 3 Routes app.add_native_route() zero-GIL C-speed fast-paths (50,000+ req/sec).
Database Engine sqlx SQLite & PostgreSQL pool (app.connect_db()) with zero-copy JSON streaming (db.query_json()).
Power Primitives Native Rust encode_jwt() / decode_jwt(), Argon2 hash_password() / verify_password(), MiniJinja render_template().
Response Classes HTMLResponse, JSONResponse, PlainTextResponse, RedirectResponse, StreamingResponse, EventSourceResponse.
Request Ergonomics req.json(), req.form, req.body, UploadFile, WebSocket.
AI / MCP Integration Embedded Model Context Protocol server (@app.tool(), @app.resource(), @app.prompt()) at POST /mcp.
Telemetry & Observability Terminal access logging (INFO: 127.0.0.1 - "GET /render HTTP/1.1" 200 - 0.45ms), Swagger UI (/docs), OpenAPI (/openapi.json).

⚡ Framework Standing & Capability Comparison

rustapi delivers 100% FastAPI developer experience (DX) while running on a high-performance Rust (Tokio/Hyper) core engine.

┌───────────────────────────────────────────────────────────┐
│                    Python Layer (DX)                      │
│ FastAPI Syntax • Pydantic Models • Routers • SSE • Docs   │
└─────────────────────────────┬─────────────────────────────┘
                              │  PyO3 C-Bindings
┌─────────────────────────────▼─────────────────────────────┐
│                    Rust Tokio/Hyper Core                  │
│ Async Multi-Thread IO • Tokio Workers • sqlx DB • SSE      │
└───────────────────────────────────────────────────────────┘
Capability FastAPI RustAPI (pyrustapi) rustapi Advantage
API Syntax (@app.get, Depends, APIRouter) ✅ ✅ 100% drop-in API compatibility
Interactive Docs (/docs, /redoc) ✅ ✅ Swagger UI & ReDoc served natively
SSE Real-Time AI Streaming ✅ ✅ Low-latency token streaming for LLMs
Single-Page App Serving (app.frontend) ❌ Manual ✅ Zero-config React/Vite/Svelte dist serving
Embedded DB Engine (sqlx) ❌ None ✅ Native C/Rust DB pool with zero-copy JSON
Rust Security Primitives (Argon2/JWT) ❌ External ✅ Built-in high-speed C-extension primitives
Model Context Protocol (MCP Server) ❌ External ✅ Built-in AI Agent MCP server (POST /mcp)
Peak Throughput (Native Fast-Paths) ~5k req/s 50,000+ req/s Zero-GIL Tokio execution for critical routes

📚 Documentation Reference

Detailed documentation is available in the docs/ directory and project reference:


🛠️ Local Development & Testing

Build from source with maturin:

# Clone the repository
git clone https://github.com/rajboopathiking/rustapi.git
cd rustapi

# Build release wheel with Maturin
pip install maturin
maturin develop --release

# Run full test suite
pytest tests/ -v

PYPI Package

pip install pyrustapi

📄 License

Distributed under the MIT License.

Metadata

Release files for pyrustapi 1.8.9

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

Source distribution (sdist)

Source distribution for pyrustapi 1.8.9
File Size Uploaded
pyrustapi-1.8.9.tar.gz 6.3 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyrustapi 1.8.9
File
pyrustapi-1.8.9-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
pyrustapi-1.8.9-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 abi3 Linux glibc 2.17+ x86-64 Details
pyrustapi-1.8.9-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details
pyrustapi-1.8.9-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details

Total release size: 22.9 MB

Release files / pyrustapi-1.8.9.tar.gz

Download URL pyrustapi-1.8.9.tar.gz
Size 6.3 MB
Tags Source
SHA-256 checksum
How to use checksums
48e417c41f89b1ea67330fc57b1eba802811bf3dc6b3a64a3c66ff55fa6c2fb8
BLAKE2b-256 checksum
How to use checksums
964ab3b03a638a0cb847c67ec6826bb51ea7c0ea316b7f80c825a99e5b507559
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyrustapi-1.8.9-cp38-abi3-win_amd64.whl

Download URL pyrustapi-1.8.9-cp38-abi3-win_amd64.whl
Size 4.3 MB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
6d5ca4be29d627f04d39dd33786a2b8f1fa30cf52862229cfbcfc41a80088542
BLAKE2b-256 checksum
How to use checksums
2f01f3015ff4cbababb39f0de73f88a5ea71cf8a7fb0a9113c96c61716ca8329
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyrustapi-1.8.9-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pyrustapi-1.8.9-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 4.3 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
c6c05d3e0919e85d3d7487523cf8744ad45c273f2c10a7fb27c8b1fc576520d9
BLAKE2b-256 checksum
How to use checksums
ada64a2ba95bae0fb975849c764e973d334a48b75d44aef1522364bcc2c54387
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyrustapi-1.8.9-cp38-abi3-macosx_11_0_arm64.whl

Download URL pyrustapi-1.8.9-cp38-abi3-macosx_11_0_arm64.whl
Size 3.9 MB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ea65075afd69153ff6b2e87882eb6c3277260cb5885d2ad80bd8caa45eacc374
BLAKE2b-256 checksum
How to use checksums
fd56fa360cc90645fbda82556b163c4954236858f6645c3c5b3afaa59781923f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyrustapi-1.8.9-cp38-abi3-macosx_10_12_x86_64.whl

Download URL pyrustapi-1.8.9-cp38-abi3-macosx_10_12_x86_64.whl
Size 4.1 MB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
bae575be8230af8ac2e19619a39cfb3321a50a49943199977e3504f59bf726c3
BLAKE2b-256 checksum
How to use checksums
4ceb2c79ad8c0459d7c7b6d6b1e26505a85c4b8a299c508d943d59a135e2abfd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

1.8.9 This release

5 release files

1.8.8

5 release files

1.8.6

5 release files

0.8.6

5 release files

0.3.3

5 release files

0.3.0

5 release files

0.1.33

5 release files

0.1.31

5 release files

0.1.30

5 release files

0.1.29

5 release files

0.1.28

4 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