Jetio

The Zero-Boilerplate Python Framework

Transform SQLAlchemy models into high-performance REST APIs with minimal code. Stop writing boilerplate, start building what matters.

Why Choose Jetio?

Jetio is built on a philosophy of convention over configuration.

Model-Driven APIs

Use standard SQLAlchemy models as your single source of truth for your database, validation, and API serialization.

Automatic CRUD

Instantly generate robust Create, Read, Update, and Delete endpoints for any model with a single line of code.

Async First

Built from the ground up on an async core (powered by Starlette) for maximum performance and scalability.

Secure by Design

Easily secure your auto-generated endpoints with a single flag and plug in your own authentication logic.

Automatic Docs

Get interactive Swagger UI and ReDoc API documentation out of the box, ready for your team and users.

Flexible & Familiar

Use familiar decorator-based routing for custom endpoints, giving you the best of both worlds.

🚀 From Model to Live API in 3 Steps

See how easy it is to get a production-ready API running.

Step 1: Define Your Models

Create your data structures using standard SQLAlchemy 2.0 syntax in `models.py`.

# models.py
from sqlalchemy.orm import Mapped
from jetio import JetioModel

class User(JetioModel):
    __tablename__ = 'users'
    username: Mapped[str]
    email: Mapped[str]

class Minister(JetioModel):
    first_name: Mapped[str]
    last_name: Mapped[str]

Step 2: Create the Jetio App

In `app.py`, import your models and pass them to the `CrudRouter`.

# app.py
from jetio.framework import Jetio, CrudRouter
from models import Minister, User

app = Jetio()

# Generate 5 CRUD routes per model
CrudRouter(model=User).register_routes(app)
CrudRouter(model=Minister).register_routes(app)


if __name__ == "__main__":
    app.run()

Step 3: Explore Your API Instantly

That's it. Jetio automatically generates interactive API documentation for all your endpoints. Select a model below to see its generated API.

Screenshot of Jetio's auto-generated Swagger UI for models

Blazing Fast Performance

Jetio isn't just easy to use—it's built for speed. See how it compares to other popular frameworks in a real-world, database-driven benchmark.

View Classic Benchmark Report

View one-to-many relationship Benchmark Report

* Results shown are the average of three separate benchmark runs on the same hardware.