Tool to combine YAML datasets with Jinja2-based templates.
Project description
# 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](http://pandoc.org) 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](https://snakemake.readthedocs.io/en/stable/) 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](examples/README.md) 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!
[Jinja2](http://jinja.pocoo.org/docs/2.10/) (→ [templating language](http://jinja.pocoo.org/docs/2.10/templates/))
[Snakemake](https://pypi.org/project/snakemake/) (→ [writing rules](https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html))
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:
YAML (→ [specification](http://yaml.org/spec/)) and the [ruamel.yaml](https://yaml.readthedocs.io/en/latest/basicuse.html) package.
JSON (→ [specification](https://json.org/))
# 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](https://docs.pytest.org/en/latest/) with tests defined in the [tests/](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](https://docs.pytest.org/en/latest/usage.html).
## Releases
The release workflow is mostly automated and is in the [release/](release/) folder.
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
File details
Details for the file datareport-0.1.7.tar.gz.
File metadata
- Download URL: datareport-0.1.7.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.31.1 CPython/3.6.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5b3620697acb723ebc486a40509141958519831195add1813eb02017436dfa86
|
|
| MD5 |
8c642d0cd6a6225df1665de9fefedc29
|
|
| BLAKE2b-256 |
062726952ee47a1a3ab312b055edf64d010d013135c7c90cedf4cc52af436e97
|