benjaminwoods / despot

Utilities for better code practices
GNU General Public License v3.0
0 stars 0 forks source link

despot

.. image:: https://travis-ci.org/benjaminwoods/despot.svg?branch=master :target: https://travis-ci.org/benjaminwoods/despot :alt: Build Status .. image:: https://readthedocs.org/projects/despot/badge/?version=latest :target: https://despot.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status

Currently in pre-alpha!

Codify programming standards and regulations as well... code!

despot is a framework/tool written (primarily) in Python that allows one to write and run metatests on packages/libraries. Use it to get a team all on the same page, and prevent bad code practices.

Each metatest allows one to perform analysis on the code itself, rather than the results of the code. To do this, despot leverages Radon and Pydantic. All of which, Some typical uses include:

Quick example coming soon...

Basic principles

This is metaprogramming, through and through, but without all of the unnecessary fluff. despot is designed with the following in mind:

With despot, you can enforce code standards by writing pieces of code. Each set of standards (or rules) is enforced by a function known as a ruler. Use a Despot instance to organise your rulers, and deal with the results.