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.33

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

Built distributions (wheels)

Table of built distributions (wheels) for pyrustapi 0.3.33
File
pyrustapi-0.3.33-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
pyrustapi-0.3.33-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.33-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details
pyrustapi-0.3.33-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details

Total release size: 19.8 MB

Release files / pyrustapi-0.3.33.tar.gz

Download URL pyrustapi-0.3.33.tar.gz
Size 3.4 MB
Tags Source
SHA-256 checksum
How to use checksums
b3d2e0195050e4cb2f54bfb0a2cbdbe261b303845a36dba451668bda30912d0d
BLAKE2b-256 checksum
How to use checksums
293f417ad04a206286fd5e4b7b10c4fbfb82476a31d53a96e88c1810e1a9556f
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.33-cp38-abi3-win_amd64.whl

Download URL pyrustapi-0.3.33-cp38-abi3-win_amd64.whl
Size 4.2 MB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
7f3d06880b95ca150bef3fc00cf0d69ae8b6dc8b045116eb2dab5e67848ea3a8
BLAKE2b-256 checksum
How to use checksums
27f113fa62393ea6c734cdbbc9b61994f242a33155f56e773253fb1eb695cf21
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.33-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pyrustapi-0.3.33-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
b6b8f52abcb96f71a468673e3b8a1c81933a80a25a5b266038ab61bed6002dea
BLAKE2b-256 checksum
How to use checksums
212d81d0869a5724c7537c615153cd36fc9a271d36569cc03dd42bb057aacc1c
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.33-cp38-abi3-macosx_11_0_arm64.whl

Download URL pyrustapi-0.3.33-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
34efd15a4fcd14db51fcbe3d2251814a08a8419a83e74d1d2d7bdcd09d33d687
BLAKE2b-256 checksum
How to use checksums
45ff78a254ae94b64f6b87fc45219bcadb39ef795073a6d70eeb3cad38710a0b
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.33-cp38-abi3-macosx_10_12_x86_64.whl

Download URL pyrustapi-0.3.33-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
30cbd2c2bbae24d976a1f1e6dec48037bbed18af414188d2efd8160ba7da39e2
BLAKE2b-256 checksum
How to use checksums
869bc33419761735944620070aea4abc72f60f9a404ec962dd279cf2ad2493e5
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.3.33 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