Skip to content

RicNord/intropy

Repository files navigation

Intropy

Version Build Status

Powered by Cookiecutter, intropy is a framework for jump-starting production-grade python projects. It generates a new python project within seconds that is configured automatically with:

  • Build system
  • Test and code quality tooling
  • Documentation
  • Automation pipelines
  • Security scanner
  • etc...

Features

  • Ruff | Linter and formatter (Optionally strict Black as code formatter)
  • Pytest | Test framework
  • Tox | Standardized testing and automation
  • Coverage | Code coverage
  • Mypy | Static type checker
  • Package and environment management
    • Deployable applications: Pipenv | Version pinning and virtual environment setup
    • Libraries: pyproject.toml explicitly defined dependencies
  • Pre-commit | pre-commit hooks
  • Bump my version | Bump semantic version
  • Sphinx | Documentation tool
  • Logging boilerplate
  • Bandit and Trivy | Security scanners
  • DevOps platform options
    • Github
      • Github workflows | CI and publishing to PyPi
      • Github templates | Pull Requests and Issues
    • Azure Devops
      • Azure pipelines | CI
  • Makefile for convenience

Usage

Install cookiecutter:

pip install cookiecutter

Create project:

cookiecutter https://github.com/RicNord/intropy

You will be prompted for some values. After that the project will be generated!

(Optional) Standalone CLI

A wrapper around the cookiecutter CLI is also provided and can be installed with:

pip install intropy

For API reference see:

intropy --help