Create Python projects easily using well-defined templates.
Project description
pyquickstart
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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | e650a1a71a7a249e0783f11daeebe0f820ca4d5d2a47a20ab9208309e1b33f9f |
|
MD5 | d36cb19e66071d4e9ecd2ce718a1e77b |
|
BLAKE2b-256 | e85ce57dad1c9068975e66d07ba337587676ca390e7d1d3231f54846d5dda57f |