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 0.7.86

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 0.7.86
File Size Uploaded
pyrustapi-0.7.86.tar.gz 3.4 MB Details

Built distributions (wheels)

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

Total release size: 20.0 MB

Release files / pyrustapi-0.7.86.tar.gz

Download URL pyrustapi-0.7.86.tar.gz
Size 3.4 MB
Tags Source
SHA-256 checksum
How to use checksums
22512db29ce177a6e3eec480ede58c3d4c148a32f3937ff1b931848601b1e81b
BLAKE2b-256 checksum
How to use checksums
230484c750011c6ffd70578d850514219ca4c489c00780f7c35dfe603f5ceb9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

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

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

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

Download URL pyrustapi-0.7.86-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
934c00c3931d51e9ff6de2381f1253de23b4e9cbcce462e7e3498ce6ec276918
BLAKE2b-256 checksum
How to use checksums
14e6fb394e9a233af226bbb2ce52ab5180be44255a104b5af31fd11ca2f08c70
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pyrustapi-0.7.86-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
00c086741ef326327920cbe4ebde0153c74b08dd6843c467940bc5cdf9e2cf94
BLAKE2b-256 checksum
How to use checksums
90844bb8949590df9733f42b08c690b4e2878c76e97b561caec1cfceb0dd6111
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pyrustapi-0.7.86-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
df2e0a7fe15ed207fd87207226713dbf6ea9c37ee16e51e6cf86832a23e889b9
BLAKE2b-256 checksum
How to use checksums
6683fec0ac85477818a491e8998c7861fe664e66bf550429d2b8d03ebce828b2
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

1.8.9

5 release files

1.8.8

5 release files

1.8.6

5 release files

0.8.6

5 release files

This release

0.7.86 This release

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