Skip to content

Latest commit

 

History

History
112 lines (82 loc) · 7.31 KB

README.md

File metadata and controls

112 lines (82 loc) · 7.31 KB

Precommit CI Test

A Python project testing precommit ci

CI Release DevContainer CommitLint Coverage PyPI PyPI - Python Version GitHub

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

Warning

Precommit CI Test is in the Alpha phase. Frequent changes and instability should be anticipated. Any feedback, comments, suggestions and contributions are welcome!

Precommit CI Test

Setting up a project often involves more than just establishing a basic project structure. It involves tasks like integrating GitHub Actions or GitLab CI/CD, configuring lint, test and documentation, as well as implementing settings, logging and other frequently used modules. Serious Scaffold Python streamlines this process. Powered by copier, bootstrapping a new Python project can be done with a single command. By answering a few questions, the project will be fully configured and ready for development. Furthermore, the project can be updated alongside the advancement of the template.

If you find this helpful, please consider [sponsorship](https://github.com/sponsors/Joseph Chiocchi).

🛠️ Features

🔧 Prerequisites

Certain system-level Python applications are needed and it is recommended to use pipx to install and run them in isolated environments. Refer to pipx's installation instructions here. Once pipx is set up, install the necessary tools using the following commands.

# Copier: Template rendering for projects.
pipx install copier
# PDM: A modern Python package and dependency manager supporting the latest PEP standards.
pipx install pdm
# Pre-commit: Automates Git hooks for code quality checks.
pipx install pre-commit

🚀 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. Set up the development environment.

    make dev
  4. Commit the initialized project.

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

🛡 Badge

Badge for markdown:

[![Serious Scaffold Python](https://img.shields.io/endpoint?url=https://serious-scaffold.github.io/ss-python/_static/badges/logo.json)](https://serious-scaffold.github.io/ss-python)

Badge for restructuredtext:

.. image:: https://img.shields.io/endpoint?url=https://serious-scaffold.github.io/ss-python/_static/badges/logo.json
    :target: blastpoint-inc.github.io/precommit-ci-test

It will look like this: Serious Scaffold Python

📜 License

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