Loading...
Loading...
Configure Litestar stores and the store registry for caching, server-side sessions, rate limiting, and other key-value state with explicit backend selection, bytes-safe data handling, TTL and renewal policy, namespacing, registry wiring, and lifecycle cleanup. Use when a Litestar app depends on `MemoryStore`, `FileStore`, `RedisStore`, `ValkeyStore`, or `StoreRegistry`. Do not use for relational persistence, domain repositories, or response-caching policy details that belong in database or caching-focused skills.
npx skill4agent add alti3/litestar-skills litestar-storesStoreRegistryFileStoredelete_all()MemoryStoreFileStoreRedisStoreValkeyStorestores={...}StoreRegistry(default_factory=...)with_namespace()litestar-cachingStoreRegistryset(key, value, expires_in=...)get(key, renew_for=...)delete(key)delete_all()exists(key)expires_in(key)set()get()expires_inrenew_forget()delete()MemoryStoreFileStoredelete_expired()RedisStoredelete_all()ValkeyStoreRedisStoreexpires_inset()renew_forget()FileStoredelete_expired()MemoryStoreFileStorewith_namespace()delete_all()RedisStoreLITESTARnamespace=Nonedelete_all()Litestar.storesStoreRegistryapp.stores.get(name)default_factoryMemoryStoreStoreRegistryStoreRegistry.register(name, store, allow_override=False)response_cachesessionsMemoryStoredelete_expired()MemoryStoreFileStoreFileStore.delete_expired()RedisStoreRedisStore.with_client(...)MemoryStoreMemoryStorefrom litestar import Litestar, get
from litestar.config.response_cache import ResponseCacheConfig
from litestar.middleware.rate_limit import RateLimitConfig
from litestar.middleware.session.server_side import ServerSideSessionConfig
from litestar.stores.redis import RedisStore
from litestar.stores.registry import StoreRegistry
root_store = RedisStore.with_client()
@get("/cached", cache=True, sync_to_thread=False)
def cached_handler() -> str:
return "hello"
app = Litestar(
[cached_handler],
stores=StoreRegistry(default_factory=root_store.with_namespace),
response_cache_config=ResponseCacheConfig(store="response_cache"),
middleware=[
ServerSideSessionConfig(store="sessions").middleware,
RateLimitConfig(rate_limit=("second", 10), store="rate_limit").middleware,
],
)MemoryStoreMemoryStoredelete_all()FileStoreMemoryStorenamespace=Noneapp.stores.get(name)MemoryStorelitestar-cachinglitestar-authenticationlitestar-securitylitestar-middlewarelitestar-app-setuplitestar-testing