{"repo":"maldoinc/wireup","free":true,"listed":false,"github":"https://github.com/maldoinc/wireup","clone":"git clone https://github.com/maldoinc/wireup.git","description":"Type-driven dependency injection for Python. Fail-fast validation, lifetimes, native integrations for FastAPI, Flask, Django, and more.","language":"Python","stars":432,"topics":["python","django","flask","dependency-injection-container","dependency-injector","aiohttp","fastapi","ioc-container","service-locator","dependency-injection"],"license":"MIT","category":"deployment-docker-iac","readme_excerpt":"Wireup Type-driven dependency injection for Python. Wireup is battle-tested in production, thread-safe, no-GIL (PEP 703) ready, and fail-fast by design: if the container starts, it works . Quick Start &middot; Docs &middot; Benchmarks &middot; Migrate to Wireup Why Wireup? 🔁 Define Once, Use Anywhere Reuse the same application code in APIs, CLIs, workers, and scripts without rewriting your wiring. ✅ Correct by Default If the container starts, your dependency graph is valid. Wireup checks for missing or misconfigured dependencies to avoid surprises at runtime. See What Wireup Validates 🌐 Framework-Ready Native integrations for FastAPI , Django , Flask , Starlette , Celery , Click , Typer , and more. ⚡ Zero-Overhead Handlers Resolve singleton constructor dependencies once at startup in FastAPI and AIOHTTP class-based handlers, not per request. 🧩 Advanced Wiring Go beyond simple constructor injection with reusable bundles , explicit scope context sharing , collection injection , and more using plain Python. 🧪 Easy to test Override dependencies with context managers, keep tests isolated, and restore the original graph automatically. Benchmarks Dense dependency graph resolved per request in FastAPI + Uvicorn (Requests per second, higher is better. Manual Wiring represents the upper bound.) Full methodology and reproducibility: benchmarks . Installation Quick Start Wireup works anywhere, in APIs, CLIs, workers, scripts. Here's what it looks like in FastAPI: For a full end-to-en","default_branch":null,"files":null,"tree":[],"storefront":"/r/maldoinc","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/maldoinc/wireup/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}