Skip to main content

SCROLL: Automatically generates documentation and unit-tests for python programs

Project description

SCROLL: Automatically generates documentation and unit-tests for python programs

Built with Data processing programs in mind

PyPI version Downloads Python 3.6+ Code style: black

How it works

This tool monitors your function calls and returns while you "exercise" you program (i.e run functional tests). It will collect this information (traces), record the order in which your functions run and generate documentation / tests using that information.

Design concept

The final goal is to enable a developer/user browser through documentation that flows in the order in which functions in the program run, hence the name SCROLL.


pip install scroll

To install using wheel files, Check in Distribution files

Example Usage

Lets say your file which contains the main entry function is called

An example main file with an entry function


def run():
    '''this is your singular entry function'''
    # your code here

if __name__ == '__main__':

Run the file using scroll on bash


How about some guidelines?

  • There should be only one main entry function in your code


  • add creating of url with class name / func name ancored on it
  • add creating of that has scroll of all functions


To get started contributing, visit the CONTRIBUTING GUIDE

Contributors and acknowledgment

  1. Edison Abahurire simicode

Similar Libraries that do Runtime-Introspection:

  1. pythoscope for Auto unit-test generation
  2. auger for Auto Unit-test generation
  3. MonkeyType for Auto Type hinting / Annotation
  4. hypothesis for Auto test-case generation




  • MonkeyType: When I got this idea, My first option was to just plagiarise their code ;) I also learned a lot from issue-conversations with @carljm.
  • Flit which this wonderful library is packaged with.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scroll-2021.11.17.tar.gz (17.2 kB view hashes)

Uploaded source

Built Distribution

scroll-2021.11.17-py3-none-any.whl (10.0 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page