Templates (Jinja2)
Basic Template Rendering
Section titled “Basic Template Rendering”Install dependencies:
pip install jinja2Create a template directory:
templates/ index.html items.htmlSet up templates in your app:
from justapi import JustAPIAppfrom starlette.templating import Jinja2Templates
app = JustAPIApp()templates = Jinja2Templates(directory="templates")
@app.get("/")def index(request): return templates.TemplateResponse("index.html", {"request": request, "title": "Home"})Template Example
Section titled “Template Example”<!DOCTYPE html><html><head> <title>{{ title }}</title></head><body> <h1>{{ title }}</h1> <p>Welcome to JustAPI</p></body></html>Passing Data
Section titled “Passing Data”@app.get("/items")def list_items(request): items = [{"id": 1, "name": "Widget"}, {"id": 2, "name": "Gadget"}] return templates.TemplateResponse("items.html", { "request": request, "items": items, "title": "Items", })See Also
Section titled “See Also”- Frontend — frontend integration
- Static Files — serving CSS/JS
- Custom Response Classes — HTML responses