/cookiecutter-netbox-plugin

Cookiecutter template for easy building NetBox plugins

Primary LanguagePythonApache License 2.0Apache-2.0

Cookiecutter NetBox Plugin

Cookiecutter template for a NetBox plugin, built with popular develop tools and conform to best practice.

Note: Plugins from this version target NetBox 4.0+

Features

This tool will create Python project with the following features:

  • Mkdocs: Writing your docs in markdown style
  • Format with Black and Isort
  • Lint code with Flake8 and Flake8-docstrings
  • Pre-commit hooks: Formatting/linting anytime when commit your code
  • Mkdocstrings: Auto API doc generation
  • Continuous Integration/Deployment by GitHub actions, includes:
    • publish documents automatically when CI success
    • extract changelog from CHANGELOG and integrate with release notes automatically
  • Host your documentation from GitHub Pages with zero-config

Quickstart

Install the latest Cookiecutter if you haven't installed it yet (this requires Cookiecutter 1.4.0 or higher):

pip install -U cookiecutter

Generate a Python package project:

cookiecutter https://github.com/netbox-community/cookiecutter-netbox-plugin.git

Then follow Tutorial to finish other configurations.