Skip to main content

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]: 

Metadata

Release files for pyquickstart 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pyquickstart 2.0.0
File Interpreter ABI Platform
pyquickstart-2.0.0-py3-none-any.whl Python 3 none any Details

Release files / pyquickstart-2.0.0-py3-none-any.whl

Download URL pyquickstart-2.0.0-py3-none-any.whl
Size 12.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e650a1a71a7a249e0783f11daeebe0f820ca4d5d2a47a20ab9208309e1b33f9f
BLAKE2b-256 checksum
How to use checksums
e85ce57dad1c9068975e66d07ba337587676ca390e7d1d3231f54846d5dda57f
Upload date
Uploaded using Trusted Publishing?
What is 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

Release history Release notifications | RSS feed

This release

2.0.0 This release

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page