First-class Vite 7+, Inertia.js, Island Fragments, and End-to-End Type Generation for Litestar
Documentation · Getting Started · Inertia.js · API Reference · Discord
Litestar Vite connects Litestar (Python ASGI) to the Vite 7+ frontend toolchain through a single-port AnyIO streaming proxy, deterministic .litestar.json runtime bridge, Inertia.js protocol support, server-rendered UI islands, and automatic OpenAPI + AsyncAPI TypeScript generation.
Install
uv add litestar-vite
npm install -D litestar-vite-plugin
Or with pip:
pip install litestar-vite
Quickstart
from litestar import Litestar
from litestar_vite import VitePlugin
app = Litestar(plugins=[VitePlugin()])
Scaffold a frontend template, install dependencies, and run both Litestar and Vite on a single port:
litestar assets init --template react-inertia
litestar assets install
litestar run --reload
Capabilities
| Capability | What it provides |
|---|---|
| Single-Port AnyIO Dev Proxy | Streams Vite HTTP assets and upgrades /vite-hmr WebSockets directly through your Litestar port (:8000) with zero CORS setup |
| Four Operating Modes | First-class support for spa, hybrid (Inertia.js), template (Jinja2 + <litestar-island>), and framework (Astro, Nuxt, SvelteKit) |
| Inertia.js Protocol & SSR | Native defer(), merge(), once(), shared session props, Laravel Precognition validation, and fault-tolerant SSR (RunnableDevEnvironment in dev, StdioIPCTransport worker in prod) |
| End-to-End Type Generation | Deterministic SHA-256 openapi.json, routes.json, and asyncapi.json artifacts driving @hey-api/openapi-ts, ziggy-style route() / wsRoute(), and createTypedChannels() |
| Islands & HTMX Fragments | Server-rendered UI components via ComponentResponse, Jinja vite_fragment(), and <litestar-island> hydration with automatic CSS chunk injection |
| Production & Cloud Deployment | Manifest-resolved hashed bundles, immutable caching, subresource integrity (integrity), and fsspec CDN deployment (litestar assets deploy) |
Documentation
- Getting Started & Quick Starts
- Core Concepts & Operating Modes
- Inertia.js Guide
- TypeGen, Typed Routes & Realtime Channels
- Internal Architecture & Animated Diagrams
- Python, TypeScript & CLI Reference
Contributing & License
Contributions are welcome — see the Contributing & Development Guide for local workspace setup, test commands, and architecture guidelines. Distributed under the MIT License.