Welcome to gpx-merge
A feature-rich Python project template with with auto-generated CLI, GUI and parameterized configuration.
This template provides a solid foundation for your next Python project, incorporating best practices for testing, automation, and distribution. It streamlines the development process with a comprehensive set of pre-configured tools and workflows, allowing you to focus on writing code.
Installation
Download from PyPI.
💾 For more installation options see install.
pip install gpx-merge
Run GUI from command line
gpx-merge-gui
How to use this template
🐍 For details, see the Getting Started guide.
Feature overview
- 📦 Package Management: Utilizes uv, an extremely fast Python package manager, with dependencies managed in
pyproject.toml. - ✅ Code Formatting and Linting: Pre-commit hook with the RUFF auto-formatter to ensure consistent code style.
- 🧪 Testing: Unit testing framework with pytest.
- 📊 Code coverage reports using codecov
- 🔄 CI/CD: GitHub Actions for automated builds (Windows, macOS), unit tests, and code checks.
- 💾 Automated Builds: GitHub pipeline for automatically building a Windows executable and a macOS installer.
- 💬 Parameter-Driven Automation:
- Automatic generation of a configuration file from parameter definitions.
- Automatic generation of a Command-Line Interface (CLI) from the same parameters.
- Automatic generation of CLI API documentation.
- Automatic generation of change log using gitchangelog to keep a HISTORY.md file up to date.
- 📃 Documentation: Configuration for publishing documentation on Read the Docs using mkdocs .
- 🖼️ Minimalist GUI: Comes with a basic GUI based on tkinker that includes an auto-generated settings menu based on your defined parameters.
- 🖥️ Workflow Automation: A
Makefileis included to simplify and automate common development tasks. - 🛳️ Release pipeline: Automated releases unsing the Makefile
make releasecommand, which creates a new tag and pushes it to the remote repo. Thereleasepipeline will automatically create a new release on GitHub and trigger a release on [PyPI](https://pypi.org.- setuptools is used to package the project and manage dependencies.
- setuptools-scm is used to automatically generate the
_version.pyfile from thepyproject.tomlfile.
Metadata
Release files for gpx-merger 0.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gpx_merger-0.0.4.tar.gz | 184.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gpx_merger-0.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 213.8 kB
Release files / gpx_merger-0.0.4.tar.gz
| Download URL | gpx_merger-0.0.4.tar.gz |
|---|---|
| Size | 184.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
97aeeedb874350e3d052e485582ab0e074c359875d04206f3e49659782d21a17
|
|
BLAKE2b-256 checksum How to use checksums |
c2e82248286b6140d3d88534263e8cd7ec2b84acda180ed3f205b3c567b9a274
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|
Release files / gpx_merger-0.0.4-py3-none-any.whl
| Download URL | gpx_merger-0.0.4-py3-none-any.whl |
|---|---|
| Size | 29.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d53374f25fd38637a8315d54322fd444c4983551c54937849bfdbdc57fc271df
|
|
BLAKE2b-256 checksum How to use checksums |
5a3f869ff9a7b1abb02a5790f7bd5bb1f5049a63234dc8cb369dbbcfa6f7e0d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|