Example Project to show how to package a Django project for pip and PyPI


Keywords
django
License
MIT
Install
pip install pipinator==0.1.20

Documentation

Pipinator

This is just a sample project to illustrate how to package a Django project so it can be installed over PyPi with pip.

You can find the source code at: https://github.com/antonpirker/django-pip-project The important parts are in the files: django-pip-project/setup.py and django-pip-project/pipinator/__main__.py.

Installing the project from a local directory:

If you clone the code repository to a local directory (~/tmp/django-pip-project/) you can install the project with the following command:

$ pip3 install -e ~/tmp/django-pip-project/

After this you can run the debug server of the project with a simple:

$ pipinator

You need to run pipinator inside (or above) the local directory you cloned the project to or you will get an SuspiciousFileOperation Error.

Uploading to PyPI:

Check description format:

Check if the description and long_description can be rendered by PyPI:

$ pip install readme_renderer
$ python setup.py check -r -s

Create a source distribution:

This creates a dist/ directory containing a archive with your project:

$ python setup.py sdist

Note: There are also other ways to package your project. See the Python documentation for a complete guide on how to package your project: https://packaging.python.org/tutorials/distributing-packages/#packaging-your-project

Create an account on PyPI:

See: https://packaging.python.org/tutorials/distributing-packages/#create-an-account

Upload your project to PyPI:

You have to use twine to upload your package (you will need to enter your username and password):

$ pip install twine
$ twine upload dist/*

If you want to save your credentials to a file, so you do not have to enter them every time you upload a version see: https://packaging.python.org/tutorials/distributing-packages/#create-an-account