Skip to main content

Create Python projects easily using well-defined templates.

Project description

pyquickstart

Pipeline Coverage PyPI

Create Python projects easily using well-defined templates.

Features

  • Intuitive Python project creation
  • Well-defined project structure using source directory layout
  • Pre-configured code linting with PEP8 in mind
  • Improved code quality leveraging static code analysis
  • Enabled unit and integration testing supporting test-driven development
  • Production-ready continuous integration and deployment toolchain

Standard template

We use this template for our own projects following modern best practices:

  • Formatting code with brunette (a better configurable black fork)
  • Sort and style import with isort
  • Linting with flake8
  • Testing automation with pytest and tox for current Python releases
  • Measuring code coverage using coverage
  • Continuous integration on Gitlab
  • Packaging as wheel
  • Deployment on PyPI using twine

Technical requirements

Below is the list of currently supported Python releases:

# Python
1 3.7
2 3.8
3 3.9
4 3.10

Code and contribution

The code is open source and released under the MIT License (MIT). It is available on Gitlab and follows the guidelines about Semantic Versioning for transparency within the release cycle and backward compatibility whenever possible.

All contributions are welcome, whether bug reports, reviews, documentation or feature requests.

If you're a developer and have time and ideas for code contributions, fork the repo and prepare a merge request:

# Prepare your environment the first time
python3.10 -m venv ~/virtualenvs/pyquickstart-py310
source ~/virtualenvs/pyquickstart-py38/bin/activate
pip install -e .[development]

# Running the tests while development
pytest

# Individual Python release tests and code quality checks
tox -e py310
tox -e brunette
tox -e coverage
tox -e flake8
tox -e isort
tox -e mypy

# Ensure code quality running the entire test suite,
# this requires all supported Python releases to be installed
tox

Installation

Install pyquickstart using pip:

pip install pyquickstart

Usage

Create a new Python project from the standard template in your current working directory by running pyquickstart:

pyquickstart

Then answer a few simple questions, default values in square brackets:

project [shinyprojectname]: 
author [John Doe]: 
author_email [john@example.com]: 
repository_url [https://gitlab.com/johndoe/shinyprojectname]: 
year [2022]: 

Project details


Download files

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

Built Distribution

pyquickstart-2.0.0-py3-none-any.whl (12.7 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page