Module

contrib.starlette

Starlette/FastAPI integration for Kida.

ProvidesKidaTemplates— a drop-in replacement for Starlette's Jinja2Templates.

Usage::

from fastapi import FastAPI
from kida.contrib.starlette import KidaTemplates

app = FastAPI()
templates = KidaTemplates(directory="templates")

@app.get("/")
async def homepage(request: Request):
    return templates.TemplateResponse(
        request, "index.html", {"title": "Home"}
    )

Classes

KidaTemplates 3
Starlette-compatible template renderer powered by Kida.

Starlette-compatible template renderer powered by Kida.

Methods

get_template 1 Any
Get a template by name.
def get_template(self, name: str) -> Any
Parameters
Name Type Description
name
Returns
Any
TemplateResponse 6 Any
Render a template and return a Starlette Response.
def TemplateResponse(self, request: Any, name: str, context: dict[str, Any] | None = None, status_code: int = 200, headers: dict[str, str] | None = None, media_type: str | None = None) -> Any
Parameters
Name Type Description
request

Starlette Request object.

name

Template name.

context

Template context variables.

Default:None
status_code

HTTP status code.

Default:200
headers

Additional response headers.

Default:None
media_type

Response media type.

Default:None
Returns
Any starlette.responses.HTMLResponse
Internal Methods 1
__init__ 4
def __init__(self, directory: str | Path | None = None, *, env: Environment | None = None, context_processors: list[Any] | None = None, **env_kwargs: Any) -> None
Parameters
Name Type Description
directory Default:None
env Default:None
context_processors Default:None
**env_kwargs