Metadata-Version: 2.1
Name: yippee
Version: 0.0.1
Summary: Easily manage your requirements.txt files!
Home-page: https://github.com/joshbuddy/yippee
Author: joshbuddy
Author-email: joshbuddy@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.6.0
Description-Content-Type: text/markdown
Requires-Dist: Click (==7.0)


# Yippee

## Manage requirements.txt files

Using `requirements.txt` files makes it hard to distinguish between top-level dependencies and transient dependencies. In addition, separating out different dependencies for multiple environments is challenging. *Yippee* attempts to ease the pain by specifying a DSL by which `requirements.txt` files can be generated.

For example, with the following `yippee.py` file:

```python
from yippee import group, pip

pip("django", ">=2.1.0")

with group("production"):
    pip("postgres", "2.2.2")

with group("development"):
    pip("black")
```

This would generate:

`requirements.txt`

```
Django==2.1.5
pytz==2018.7
```

`requirements-production.txt`
```
-r requirements.txt
postgres==2.2.2
psycopg2-binary==2.7.6.1
```

and

`requirements-development.txt`

```
-r requirements.txt
appdirs==1.4.3
attrs==18.2.0
black==18.9b0
Click==7.0
toml==0.10.0
```

## Usage

Install yippee via pypi. Then you can run `yippee` to generate your `requirements.txt` files.


