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, 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.3.0

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

Built distributions (wheels)

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

Total release size: 19.7 MB

Release files / pyrustapi-0.3.0.tar.gz

Download URL pyrustapi-0.3.0.tar.gz
Size 3.4 MB
Tags Source
SHA-256 checksum
How to use checksums
19b498dcb656665cfec925fbd528a7074e30b0a9e07ba39fa18e5c5d85ce7469
BLAKE2b-256 checksum
How to use checksums
afce499c4f9697cab0a4cb07c630ada635a461625784e8a0a9e418bfd33f3aa0
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.3.0-cp38-abi3-win_amd64.whl

Download URL pyrustapi-0.3.0-cp38-abi3-win_amd64.whl
Size 4.2 MB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
37d3cce1bcc2a17f27b06fd66f7af8587ecc47840aeb5e90b7a8e2c650ba0c00
BLAKE2b-256 checksum
How to use checksums
b5a9390b050bea5c257946cc9d8dd2f7c24f60ace963db2c95772263a0456c40
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.3.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pyrustapi-0.3.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 4.2 MB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
91d1803c8d89b7274546dde9e9750238b7f6179c076c8f3e0f7eb3530eefd0c6
BLAKE2b-256 checksum
How to use checksums
02c84cbe6f3793a570ec589dd05f46d77f567a55c977c80f60774883e31622d7
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.3.0-cp38-abi3-macosx_11_0_arm64.whl

Download URL pyrustapi-0.3.0-cp38-abi3-macosx_11_0_arm64.whl
Size 3.8 MB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
be5f3d389990840c958f95849ccea5ffd0bae4fd4bbf2e7fc455932cb804731b
BLAKE2b-256 checksum
How to use checksums
632b2c13dcb0b5941ab1b9a7b5a0067698f990b15ada979a8918d8059e4779b8
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.3.0-cp38-abi3-macosx_10_12_x86_64.whl

Download URL pyrustapi-0.3.0-cp38-abi3-macosx_10_12_x86_64.whl
Size 4.0 MB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
345ab93ca2508b03dd464d5bb3f6d7f9efaa95aed4dabe8dbbc48380c57e8cd4
BLAKE2b-256 checksum
How to use checksums
093d3cf1761854ac93d08c2cc68a8a1e139f4d76dbcfdde300f87659353ed59b
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

0.3.3

5 release files

This release

0.3.0 This release

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