Small Python utilities for adding concise functionality and usability to your code

miniutils, utilities, decorators, minimal
pip install miniutils==1.0.3

Documentation Documentation Status


Full documentation for this module is available over at ReadTheDocs.

This module provides numerous helper utilities for Python3.X code to add functionality with minimal code footprint. It has tools for the following tasks:

  • Progress bars on serial loops and parallel mappings (leveraging the excellent tqdm library)
  • Simple lazy-compute and caching of class properties, including dependency chaining
  • Executing Python2 code from within a Python3 program
  • More intuitive contract decorator (leveraging pycontracts)


As usual, you can install the latest code version directly from Github:

pip install git+

Or you can pip install the latest release from PyPi:

pip install miniutils


To get started, you can import your desired utilities directly from miniutils. For example, to use the CachedProperty decorator:

from miniutils import CachedProperty

class MyClass:
   def attribute(self):
      return some_slow_computation(self)

Or to use the progress bar utilities:

from miniutils import progbar, parallel_progbar

def mapper(x):
   return x**2

assert [mapper(i) for i in progbar(100)] == parallel_progbar(mapper, range(100))

To see documentation for each feature, look through this documentation or the table of contents above.