====================================================================== Dependency Injector --- Dependency injection microframework for Python ====================================================================== .. meta:: :google-site-verification: 6it89zX0_wccKEhAqbAiYQooS95f0BA8YfesHk6bsNA :keywords: Python,Dependency injection,DI,Inversion of Control,IoC, IoC Container,Factory, Singleton, Design Patterns :description: Dependency Injector is a dependency injection microframework for Python. It was designed to be unified, developer-friendly tool that helps to implement dependency injection design pattern in formal, pretty, Pythonic way. Dependency Injector provides implementations of such popular design patterns like IoC container, Factory and Singleton. Dependency Injector providers are implemented as C extension types using Cython. .. _index: *Dependency Injector* is a dependency injection microframework for Python. It was designed to be a unified and developer-friendly tool that helps implement a dependency injection design pattern in a formal, pretty, and Pythonic way. The key features of the *Dependency Injector* framework are: + Easy, smart, and pythonic style. + Obvious and clear structure. + Extensibility and flexibility. + High performance. + Memory efficiency. + Thread safety. + Documented. + Semantically versioned. *Dependency Injector* containers and providers are implemented as C extension types using Cython. Status ------ +---------------------------------------+--------------------------------------------------------------------------------------------------------------------+ | *PyPi* | .. image:: https://img.shields.io/pypi/v/dependency_injector.svg | | | :target: https://pypi.org/project/dependency-injector/ | | | :alt: Latest Version | | | .. image:: https://img.shields.io/pypi/l/dependency_injector.svg | | | :target: https://pypi.org/project/dependency-injector/ | | | :alt: License | | | .. image:: https://pepy.tech/badge/dependency-injector | | | :target: https://pepy.tech/project/dependency-injector | | | :alt: Downloads | +---------------------------------------+--------------------------------------------------------------------------------------------------------------------+ | *Python versions and implementations* | .. image:: https://img.shields.io/pypi/pyversions/dependency_injector.svg | | | :target: https://pypi.org/project/dependency-injector/ | | | :alt: Supported Python versions | | | .. image:: https://img.shields.io/pypi/implementation/dependency_injector.svg | | | :target: https://pypi.org/project/dependency-injector/ | | | :alt: Supported Python implementations | +---------------------------------------+--------------------------------------------------------------------------------------------------------------------+ | *Builds and tests coverage* | .. image:: https://travis-ci.org/ets-labs/python-dependency-injector.svg?branch=master | | | :target: https://travis-ci.org/ets-labs/python-dependency-injector | | | :alt: Build Status | | | .. image:: http://readthedocs.org/projects/python-dependency-injector/badge/?version=latest | | | :target: http://python-dependency-injector.ets-labs.org/ | | | :alt: Docs Status | | | .. image:: https://coveralls.io/repos/github/ets-labs/python-dependency-injector/badge.svg?branch=master | | | :target: https://coveralls.io/github/ets-labs/python-dependency-injector?branch=master | | | :alt: Coverage Status | +---------------------------------------+--------------------------------------------------------------------------------------------------------------------+ | *Github* | .. image:: https://img.shields.io/github/watchers/ets-labs/python-dependency-injector.svg?style=social&label=Watch | | | :target: https://github.com/ets-labs/python-dependency-injector | | | :alt: Github watchers | | | .. image:: https://img.shields.io/github/stars/ets-labs/python-dependency-injector.svg?style=social&label=Star | | | :target: https://github.com/ets-labs/python-dependency-injector | | | :alt: Github stargazers | | | .. image:: https://img.shields.io/github/forks/ets-labs/python-dependency-injector.svg?style=social&label=Fork | | | :target: https://github.com/ets-labs/python-dependency-injector | | | :alt: Github forks | +---------------------------------------+--------------------------------------------------------------------------------------------------------------------+ Contents -------- .. toctree:: :maxdepth: 2 introduction/index main/installation providers/index containers/index examples/index api/index main/feedback main/changelog