Skip to main content

a minimal Python project example with unit testing, command line interface, PyPi publishing capabilities

Project description

Minimal Example Project

This repo provides a complete example for a PRO Python project that you and your fellow developers will be proud of.

Source: https://github.com/michel-lacle/minimal_example_project

It provides:

  • a pip installable project.
  • module entry point examples, so you can run your modules from the command line.
  • a pytest based testing framework.
  • example commands for various workflows.
  • scripts to publish project to pypi repo.

Developer Workflows

Initialize the python project

This you only do once after you clone this repo.

# setup your environment to put all python dependencies in the env folder
python3 -m venv env

# set python path to use our isolated python environment
. env/bin/activate

# install the package in editable mode so you can
# develop & test without having to reinstall the package
python3 -m pip install -e ./

Development & Testing

This you do every time open a new shell to develop, run, and test your code.

# set python path to use our isolated python environment
. env/bin/activate

# install project dependencies
python3 -m pip install -r requirements.txt

# add a project dependency
python3 -m pip install <new dependency>

# then you need to save the dependency
python3 -m pip freeze > requirements.txt

# run all tests
python3 -m pytest

# install the package in non editable mode
python3 -m pip install ./

# uninstall the package
python3 -m pip uninstall minimal_example_project

# run the package main
python3 -m merkle_example

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

minimal_example_project-1.0.3.tar.gz (3.4 kB view hashes)

Uploaded Source

Built Distribution

minimal_example_project-1.0.3-py3-none-any.whl (4.2 kB view hashes)

Uploaded Python 3

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