litestar-htmx
HTMX
Execution Workflow
- Decide whether HTMX should be enabled globally with
HTMXPluginor locally withrequest_class=HTMXRequest. - Shape handlers around one contract: full page for normal requests, fragment or HTMX-aware response for HTMX requests.
- Read request context from
request.htmxinstead of hand-parsing HTMX headers. - Choose the right response primitive:
HTMXTemplatefor rendered fragments or the dedicated HTMX response classes for redirect, refresh, swap, retarget, event, history, or polling behavior. - Keep templates small and swap-oriented so each endpoint returns only the markup or signal the target element needs.
- Verify both non-HTMX and HTMX behaviors in tests, including headers, redirect semantics, and fragment shape.
Core Rules
- Use
HTMXPlugin()when most of the app should speak HTMX-aware requests. - Use
request_class=HTMXRequestlocally when only one app layer or route needs HTMX support. - Prefer
request.htmxandHTMXDetailsproperties over manual header inspection. - Keep full-page and fragment rendering intentional; do not accidentally return layout HTML into a fragment swap target.
- Annotate
HTMXTemplatehandlers as returningTemplate, matching the Litestar docs. - If you trigger an HTMX event from
HTMXTemplate, provideafter=and keep it toreceive,settle, orswap.
More from alti3/litestar-skills
litestar-responses
Build Litestar responses with typed return values, explicit Response containers, layered response classes, headers, cookies, status-code control, redirects, files, streams, server-sent events, ASGI app returns, and background tasks. Use when shaping outbound HTTP behavior, correcting response contracts, or choosing the right Litestar response primitive. Do not use for request parsing, validation, or authentication policy design.
22litestar-logging
Configure Litestar logging with `LoggingConfig`, `queue_listener`, exception logging policy, selective stack-trace suppression, standard logging, picologging, Structlog, and custom logging config subclasses. Use when establishing or refactoring application logging behavior, request-level logs, or production-safe error logging in Litestar. Do not use for metrics/tracing instrumentation or exception-response contract design.
22litestar-authentication
Implement Litestar authentication with custom authentication middleware, built-in security backends, JWT and session flows, route inclusion and exclusion rules, and typed auth context on `Request` / `ASGIConnection`. Use when establishing identity, issuing or validating credentials, or attaching authenticated user context in Litestar. Do not use for generic request parsing, broad security audits, or unrelated transport concerns.
22litestar-middleware
Design and apply Litestar middleware for cross-cutting concerns such as CORS, CSRF, allowed-host checks, compression, rate limiting, logging, sessions, request enrichment, policy enforcement, and custom ASGI pipeline control. Use when behavior must wrap broad route sets consistently across the ASGI stack. Do not use for route-specific business rules, simple response mutation better handled by lifecycle hooks, or auth/guard policy work that belongs in security-focused skills.
20litestar-routing
Design and implement Litestar routing with app/router/controller composition, handler decorators, path and parameter modeling, route indexing/reverse lookups, ASGI mounting, and layered route metadata. Use when creating or refactoring endpoint topology and URL contracts. Do not use for purely internal service logic unrelated to HTTP route structure.
18litestar-dto
Configure Litestar DTO behavior for inbound parsing and outbound serialization, including layer-scoped `dto`/`return_dto`, `DTOConfig` policies, `DTOData` update workflows, and custom `AbstractDTO` implementations. Use when API payload contracts differ from internal model structures. Do not use when internal models can be exposed safely without transformation.
18