Litestar Vite
Litestar Vite

Vite plugin for Litestar
Litestar Vite

First-class Vite 7+, Inertia.js, Island Fragments, and End-to-End Type Generation for Litestar

PyPInpmPythonLicenseDocs

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

CapabilityWhat it provides
Single-Port AnyIO Dev ProxyStreams Vite HTTP assets and upgrades /vite-hmr WebSockets directly through your Litestar port (:8000) with zero CORS setup
Four Operating ModesFirst-class support for spa, hybrid (Inertia.js), template (Jinja2 + <litestar-island>), and framework (Astro, Nuxt, SvelteKit)
Inertia.js Protocol & SSRNative defer(), merge(), once(), shared session props, Laravel Precognition validation, and fault-tolerant SSR (RunnableDevEnvironment in dev, StdioIPCTransport worker in prod)
End-to-End Type GenerationDeterministic SHA-256 openapi.json, routes.json, and asyncapi.json artifacts driving @hey-api/openapi-ts, ziggy-style route() / wsRoute(), and createTypedChannels()
Islands & HTMX FragmentsServer-rendered UI components via ComponentResponse, Jinja vite_fragment(), and <litestar-island> hydration with automatic CSS chunk injection
Production & Cloud DeploymentManifest-resolved hashed bundles, immutable caching, subresource integrity (integrity), and fsspec CDN deployment (litestar assets deploy)

Documentation

Contributing & License

Contributions are welcome — see the Contributing & Development Guide for local workspace setup, test commands, and architecture guidelines. Distributed under the MIT License.