Metadata-Version: 2.1
Name: vacuna
Version: 0.2.0
Summary: Reusable Lightweight Pythonic Dependency Injection Library
License: MIT
Author: Fernando Martinez Gonzalez
Author-email: frndmartinezglez@gmail.com
Requires-Python: >=3.7,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Provides-Extra: docs
Requires-Dist: mkdocs (>=1.2.2,<2.0.0); extra == "docs"
Requires-Dist: mkdocs-material (>=7.2.5,<8.0.0); extra == "docs"
Requires-Dist: mkdocstrings (>=0.15.2,<0.16.0); extra == "docs"
Requires-Dist: typing-extensions (>=3.10.0,<4.0.0)
Description-Content-Type: text/markdown

# Vacuna

> Inject everything!

![PyPI](https://img.shields.io/pypi/v/vacuna)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/vacuna)
![PyPI - Downloads](https://img.shields.io/pypi/dm/vacuna)
![PyPI - License](https://img.shields.io/pypi/l/vacuna)
[![codecov](https://codecov.io/gh/frndmg/vacuna/branch/master/graph/badge.svg?token=L38OHXFKQO)](https://codecov.io/gh/frndmg/vacuna)

Vacuna is a little library to provide dependency management for your python code.

# Install

```bash
pip install vacuna
```

# Usage

```python
import vacuna

container = vacuna.Container()

@container.dependency(name='app')
class App:
    def run(self):
        print('very important computation')

@container.dependency()
def main(app):
    app.run()

if __name__ == '__main__':
    container.run(main)
```
