INM-6 / datareport

Tool to combine YAML datasets with Jinja2-based templates

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Reporter

This tool helps in gathering and formatting of data into a report. The tool reporter.py basically combines YAML data files with Jinja2-based templates. In this way simple markup versions of your report can be produced. Together with a format converter like Pandoc the produced output can then be converted to various target formats (HTML, PDF, ...).

To keep a good overview which data is acquired for different parts of the report, it is probably a good step to automate the whole workflow with a tool like snakemake or other make-like tools.

Install

The fastest way to install datareport is to use your systems tools:

pip install datareport

To use the latest test version check out the test.pypi server:

pip install --index-url https://test.pypi.org/simple datareport

Requirements

All required packages are listed in environment.yaml. In case you installed datareport via a package management system like pip, anaconda, miniconda, ... all dependencies should already be installed automatically.

Getting Started

For easing your first steps with datareport a small set of documented examples can be found in the examples/ folder. The README file gives an overview and you can find the right place to start.

Further reading

For designing reports you need to know about the templating language and since you will want to use some automation for the reporting process, also a make-like tool is very helpful. Look at the excellent snakemake for that!

As data inputs you can use different formats. For understanding the details about each format you find a lot of information on the web, especially:

Developing datareport

Contributions are very welcome! Write issues for feature requests or directly file a pull-request with your contribution and/or contact me directly!

Tests

This project uses the PyTest framework with tests defined in the tests/ sudirectory. It is added into the setuptools config, so that it can be run with

python setup.py test

This automatically tests a temporarily packaged version.

Alternatively you can run pytest manually with all it glory details.

Releases

The release workflow is mostly automated and is in the release/ folder.

About

Tool to combine YAML datasets with Jinja2-based templates

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Python 100.0%