PipenvLib: A library for manipulating Pipenv projects.

This library exists to make it easy to programmatically interact with / introspect / manipulate Pipenv projects.

It allows you examine dependencies and requirements of a project, as well as install/uninstall packages from Python directly.

Example Usage

import pipenvlib

# Establish where the Pipenv project lives.
project = pipenvlib.PipenvProject('.')
>>> project.packages
[<Dependency 'toml' constraint='*'>, <Dependency 'delegator.py' constraint='*'>]

>>> project.locked_packages
[<LockedDependency 'delegator.py==0.0.14'>, <LockedDependency 'pexpect==4.3.1'>, <LockedDependency 'ptyprocess==0.5.2'>, <LockedDependency 'toml==0.9.4'>]

>>> project.install('requests', dev=True)

>>> project.dev_packages
[<Dependency 'requests' constraint='*'>]

>>> project.virtualenv_location

This project (which is a work in progress) was built to facilitate the development of a Sublime Text 3 plugin (which in the works).