Skip to main content

Litestar Vite

Litestar Vite connects the Litestar backend to a Vite toolchain. It supports SPA, Template, Inertia, and meta-framework workflows, and it can proxy Vite dev traffic through your ASGI port or run Vite directly.

Features

  • One-port dev: proxies Vite HTTP + WS/HMR through Litestar on a single ASGI port by default.
  • Framework-mode support: use mode="framework" (alias mode="ssr") for Astro, Nuxt, and SvelteKit. Litestar proxies everything except your API routes.
  • Production assets: reads the Vite manifest from public/manifest.json (configurable) and serves under asset_url.
  • Type-safe frontends: optional OpenAPI/routes export plus @hey-api/openapi-ts via the Vite plugin.
  • Inertia support: Inertia v2/v3 protocol support with session middleware, script-element bootstrap by default, and optional SSR.

Install

pip install litestar-vite
npm install litestar-vite-plugin

Quick Start

import os
from pathlib import Path
from litestar import Litestar
from litestar_vite import PathConfig, ViteConfig, VitePlugin

DEV_MODE = os.getenv("VITE_DEV_MODE", "true").lower() in ("true", "1", "yes")

app = Litestar(
    plugins=[VitePlugin(config=ViteConfig(
        dev_mode=DEV_MODE,
        paths=PathConfig(root=Path(__file__).parent),
    ))]
)
litestar assets init --template vue
litestar assets install
litestar run --reload

Documentation

  • Usage Guide: Core concepts, configuration, and type generation.
  • Inertia: Fullstack protocols and SSR.
  • Frameworks: Guides for React, Vue, Svelte, Angular, Astro, and Nuxt.
  • Reference: API and CLI documentation.

For a full list of changes, see the Changelog.

Common Commands

  • litestar assets init --template <name>: scaffold a frontend or framework app
  • litestar assets install: install frontend dependencies with the configured executor
  • litestar assets build: build production assets
  • litestar assets serve: run the frontend toolchain directly
  • litestar assets generate-types: export OpenAPI, routes, and Inertia page-prop metadata
  • litestar assets doctor: inspect and optionally repair config drift

Development

# Install Python, docs, and JS dependencies; build package artifacts
make install && make build

# Run an example app
uv run litestar --app-dir examples/vue-inertia assets install
uv run litestar --app-dir examples/vue-inertia run

Replace vue-inertia with any other example app: vue, react, svelte, react-inertia, htmx, angular, astro, nuxt, or sveltekit.

litestar-vite now defaults Inertia apps to script-element bootstrap. Inertia v3 clients use that transport automatically; if you pin Inertia v2, keep createInertiaApp({ defaults: { future: { useScriptElementForInitialPage: true } } }) aligned in the browser entry and SSR entry when ssr=True is enabled, or opt back into the legacy data-page path with InertiaConfig(use_script_element=False).

Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

litestar_vite-0.26.0.tar.gz (538.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

litestar_vite-0.26.0-py3-none-any.whl (279.0 kB view details)

Uploaded Python 3

File details

Details for the file litestar_vite-0.26.0.tar.gz.

File metadata

  • Download URL: litestar_vite-0.26.0.tar.gz
  • Upload date:
  • Size: 538.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for litestar_vite-0.26.0.tar.gz
Algorithm Hash digest
SHA256 3432a2fc9ccb331a8af069f286d0b02a40d8715bed49d98bebc8cea7c20c6618
MD5 aa3b4187e9c86e40595f5dda3fa689d1
BLAKE2b-256 89517e9317f2f0e6be1bee767bf132832db55b709a67687e650798c2b54b9c31

See more details on using hashes here.

Provenance

The following attestation bundles were made for litestar_vite-0.26.0.tar.gz:

Publisher: publish.yml on litestar-org/litestar-vite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file litestar_vite-0.26.0-py3-none-any.whl.

File metadata

  • Download URL: litestar_vite-0.26.0-py3-none-any.whl
  • Upload date:
  • Size: 279.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for litestar_vite-0.26.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d4c0446d30e8bb6c879724afab0d7805770c1678dbdd49f9b8c34c4e06f02bbe
MD5 cb8aecfdb686ff75ea3b103d79dfbb03
BLAKE2b-256 7722c844740d482d50bbdd15f95797f7d53434075c736403ab4c887ef1cc4dad

See more details on using hashes here.

Provenance

The following attestation bundles were made for litestar_vite-0.26.0-py3-none-any.whl:

Publisher: publish.yml on litestar-org/litestar-vite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page