Skip to main content

A Python Project Template for Long-Term Maintainability.

Project description

Serious Scaffold Python

A Python Project Template for Long-Term Maintainability.

CI CommitLint DevContainer Release Renovate Semantic Release Coverage Release PyPI PyPI - Python Version GitHub

pdm-managed pre-commit Checked with mypy Ruff Conventional Commits Pydantic v2 Copier Serious Scaffold Python Open in Dev Containers

[!WARNING] Serious Scaffold Python is in the Alpha phase. Frequent changes and instability should be anticipated. Any feedback, comments, suggestions and contributions are welcome!

Serious Scaffold Python

Serious Scaffold Python is crafted for long-term, maintainable Python projects. It includes GitHub Actions and GitLab CI/CD, automated dependency updates via Renovate, and comprehensive linting, testing, and documentation. Key integrations like pdm for environment and dependency management, typer for CLI development, and pydantic for configuration enhance project robustness. With copier’s easy project setup and continuous updating, your project stays aligned with best practices for sustainable development. Pre-configured dev containers and cross-platform CI support ensure maintainability from the start.

If you find this helpful, please consider sponsorship.

🛠️ Features

🔧 Prerequisites

pipx is required to manage the standalone tools used across the development lifecycle. Please refer to pipx's installation instructions here. Once pipx is set up, install the copier for project generation using the following command:

pipx install copier==9.4.1

🚀 Quickstart

  1. Generate the project.

    copier copy gh:serious-scaffold/ss-python /path/to/project
    
  2. Navigate to the project directory and initialize a git repository.

    cd /path/to/project
    git init
    
  3. Install standalone tools.

    make prerequisites
    
  4. Set up the development environment.

    make dev
    
  5. Commit the initialized project.

    git add .
    git commit -m "Initialize from serious-scaffold."
    
  6. That's it! Feel free to focus on the coding within src folder.

📜 License

MIT License, for more details, see the LICENSE file.

Project details


Download files

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

Source Distribution

ss_python-0.0.58.tar.gz (502.9 kB view details)

Uploaded Source

Built Distribution

ss_python-0.0.58-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file ss_python-0.0.58.tar.gz.

File metadata

  • Download URL: ss_python-0.0.58.tar.gz
  • Upload date:
  • Size: 502.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.20.1 CPython/3.12.3 Linux/6.8.0-1017-azure

File hashes

Hashes for ss_python-0.0.58.tar.gz
Algorithm Hash digest
SHA256 c4b8d9fc1071e8b0661214807eca4687fc74a297b8819d5d471130133cc0b3e3
MD5 f6aba432b69c26943308e1cbbba1ca58
BLAKE2b-256 47ce3848cff5bd297c7330b66cfb60c30ee2a2dfae80771ebc19328ba6b9a3f5

See more details on using hashes here.

File details

Details for the file ss_python-0.0.58-py3-none-any.whl.

File metadata

  • Download URL: ss_python-0.0.58-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.20.1 CPython/3.12.3 Linux/6.8.0-1017-azure

File hashes

Hashes for ss_python-0.0.58-py3-none-any.whl
Algorithm Hash digest
SHA256 4e07e078af936fb681d753f6e3586ca8a1fd58cc82f42232d8a3172e658437aa
MD5 4acef4d13b38ace3f0fb737a19ef193b
BLAKE2b-256 b0ca9655d1b813e2c2e75df1ee073ee05b996fae5e0c06a72e891e2eb93e6301

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