Skip to main content

Bootstrap new Python packages with one simple command

Project description

Bootstrap new Python packages with one simple command:

packstrap create my_package

When starting a Python package a lot of boilerplate is involved. You have to make several files and directories. When you decide to distribute your package you have to write a setup.py and reference docs for even the basics. Packstrap aims to make starting a Python package simpler.

Install

pip install packstrap packstrap –help

Creating a Package

With Packstrap, creating a package is a simple as one command:

packstrap create my_package /path/to/code --author "My Name" --plugin git --plugin fabfile --plugin pytest

This will create a my_package directory in /path/to/code with a structure similar to:

/path/to/code/my_package/
    .gitignore
    LICENSE
    MANIFEST.in
    README.rst
    VERSION.txt
    fabfile.py
    setup.py
    src/
        my_package/
            __init__.py
        tests/
            conftest.py
            runtests.py

Packstrap creates the base files for a python project and fills in the basics for setup.py, README.rst, etc. The git plugin creates .gitignore, the fabfile plugin creates fabfile.py, and the pytest plugin creates the src/tests directory and files.

So now all you have to do is write your module in my_package, expand on your docs in README.rst, and commit your package.

Set Defaults

packstrap create has several options to help generate your package. A lot of the options like author, author_email, and even plugins are going to be the same for all your projects. To save you some keystrokes you can use packstrap defaults:

packstrap defaults --author "My Name"
{
  "author": "My Name",
  "skeleton": "default"
}

You can also use packstrap defaults without options to list the current defaults.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

packstrap-0.7.0.tar.gz (4.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page