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.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

Uploaded Python 3

File details

Details for the file pyquickstart-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: pyquickstart-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 12.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for pyquickstart-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e650a1a71a7a249e0783f11daeebe0f820ca4d5d2a47a20ab9208309e1b33f9f
MD5 d36cb19e66071d4e9ecd2ce718a1e77b
BLAKE2b-256 e85ce57dad1c9068975e66d07ba337587676ca390e7d1d3231f54846d5dda57f

See more details on using hashes here.

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