# Serious Scaffold Pybind11

<!-- SPHINX-START -->

A template of serious scaffold family based on pybind11.

[![Documentation](https://img.shields.io/badge/Documentation-sphinx-blue)](https://serious-scaffold.github.io/ss-pybind11)
[![License](https://img.shields.io/github/license/serious-scaffold/ss-pybind11)](https://github.com/serious-scaffold/ss-pybind11/blob/master/LICENSE)
[![SS Badge](https://img.shields.io/badge/Serious%20Scaffold-pybind11-blue)](https://github.com/serious-scaffold/ss-pybind11)

[![CI](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/ci.yml/badge.svg)](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/ci.yml)
[![CD](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/cd.yml/badge.svg)](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/cd.yml)
[![Renovate](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/renovate.yml/badge.svg)](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/renovate.yml)
[![Semantic Release](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/semantic-release.yml/badge.svg)](https://github.com/serious-scaffold/ss-pybind11/actions/workflows/semantic-release.yml)
[![codecov](https://codecov.io/gh/serious-scaffold/ss-pybind11/branch/master/graph/badge.svg?token=123456789)](https://codecov.io/gh/serious-scaffold/ss-pybind11)

[![Release](https://img.shields.io/github/v/release/serious-scaffold/ss-pybind11)](https://github.com/serious-scaffold/ss-pybind11/releases)
[![PyPI](https://img.shields.io/pypi/v/ss_pybind11)](https://pypi.org/project/ss_pybind11/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/ss_pybind11)](https://pypi.org/project/ss_pybind11/)

[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit)
[![clang-format](https://img.shields.io/badge/clang--format-enabled-blue)](https://github.com/pre-commit/mirrors-clang-format)
[![cmake-format](https://img.shields.io/badge/cmake--format-enabled-blue)](https://github.com/cheshirekow/cmake-format-precommit)
[![codespell](https://img.shields.io/badge/codespell-enabled-blue)](https://github.com/codespell-project/codespell)
[![markdownlint](https://img.shields.io/badge/markdownlint-enabled-blue)](https://github.com/igorshubovych/markdownlint-cli)
[![shellcheck](https://img.shields.io/badge/shellcheck-enabled-blue)](https://github.com/shellcheck-py/shellcheck-py)

## Features

- Project setup and template update with [copier](https://github.com/copier-org/copier/).
- Containerization for development and deployment with [dev container](https://containers.dev/).
- Continuous Integration with [GitHub Actions](https://docs.github.com/actions).
- Automate dependency updates with [Renovate](https://github.com/renovatebot/renovate).
- Use [cmake-registry](https://github.com/msclock/cmake-registry) to provide various cmake modules and scripts.
- Lint tool `pre-commit` integration with various linters, including [clang-format](https://github.com/pre-commit/mirrors-clang-format), [codespell](https://github.com/codespell-project/codespell), [markdownlint](https://github.com/igorshubovych/markdownlint-cli), and more.
- Documentation generation with [sphinx](https://www.sphinx-doc.org/en/master/)[[furo](https://github.com/pradyunsg/furo)] or [mkdocs](https://www.mkdocs.org/)[[material](https://squidfunk.github.io/mkdocs-material/)].
- Automatic release workflow with [semantic-release](https://github.com/semantic-release/semantic-release).
- Maintainable [documentation](https://serious-scaffold.github.io/ss-pybind11/) guides for configuration, development, security and contribution based on ss-pybind11.

## License

MIT License, for more details, see the [LICENSE](https://github.com/serious-scaffold/ss-pybind11/blob/master/LICENSE) file.
