# Introduction
Rolling-pin is a library of generic tools for ETL work and visualization of JSON
blobs and python repositories

See [documentation](https://thenewflesh.github.io/rolling-pin/) for details.

On the documentation main page, under the *Architecture* section, is a
dynamically generated dependency graph of rolling-pin's current architecture.
It is generated using the RepoETL class.

If you look under the *Metrics* section you will find Radon code metric plots
and data of the rolling-pin source code, generated by the RadonETL class.

Also have a look at this
**[Jupyter notebook demo](https://github.com/theNewFlesh/rolling-pin/blob/master/notebooks/prototype_demo.ipynb)**
for a taste of what rolling-pin can do.

# Installation
### Python
`pip install rolling-pin`

### Docker
1. Install [docker-desktop](https://docs.docker.com/desktop/)
2. `docker pull thenewflesh/rolling-pin:latest`

### Docker For Developers
1. Install [docker-desktop](https://docs.docker.com/desktop/)
2. Ensure docker-desktop has at least 4 GB of memory allocated to it.
3. `git clone git@github.com:theNewFlesh/rolling-pin.git`
4. `cd rolling-pin`
6. `chmod +x bin/rolling-pin`
7. `bin/rolling-pin start`

The service should take a few minutes to start up.

Run `bin/rolling-pin --help` for more help on the command line tool.
