What problem does it solve? Wiring dependencies in a Litestar application—database sessions, services, current users—requires choosing the right scope and the right DI mechanism, and mixing conventions leads to fragile, hard-to-test code. This Skill guides consistent use of Litestar's built-in Provide() dependency maps and Dishka integration for scoped provider management. ## Core Features & Use Cases - Built-in DI with Provide(): Register app-, router-, controller-, and handler-level dependency maps with correct override semantics. - Dishka integration: Set up Provider classes, Scope.REQUEST/Scope.APP, make_async_container, and FromDishka as Inject for explicit scope management. - Decision guidance: A comparison table clarifies when to stay on Provide() versus scaling up to Dishka. - Use Case: You are building a Litestar API where each request needs an async database session and a user service. Use this Skill to register request-scoped providers, inject them into controllers, and keep tests able to override providers cleanly. ## Quick Start Ask the AI to wire a request-scoped database session and user service into your Litestar app using Provide or Dishka.