setup.py cheatsheet

Fork me on GitHub
#!/usr/bin/env python

from setuptools import setup

setup(
    ### Metadata
    name='aerofiles',
    version='0.1.0',
    description='waypoint file readers and writers for aviation',
    long_description=...,
    url='https://github.com/Turbo87/aerofiles',
    download_url='https://pypi.python.org/pypi/aerofiles',
    license='MIT',
    author='Tobias Bieniek',
    author_email='tobias.bieniek@gmx.de',
    maintainer='John Doe',
    maintainer_email='john.doe@lavabit.com',
    classifiers=[
        'Development Status :: 1 - Planning',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: MIT License',
        'Natural Language :: English',
        'Operating System :: OS Independent',
        'Programming Language :: Python',
        'Topic :: Scientific/Engineering :: GIS',
    ],
    ### Dependencies
    install_requires=[
        'utm',
        'SQLAlchemy>=0.6',
        'BrokenPackage>=0.7,<1.0',
    ],
    dependency_links=[
        'git+https://github.com/Turbo87/utm.git@v0.3.1#egg=utm-0.3.1',
    ],
    ### Contents
    packages=find_packages(exclude=['tests*']),
)

Welcome to the setup.py cheatsheet!

This is an interactive guide for exploring various important parameters of the setup.py packaging script format for python applications.

You can access information about parameters by hovering over or clicking the property name.

Thanks to Nodejitsu for their package.json cheatsheet which inspired me to create this page.