Data driven report builder for the Python data ecosystem.
#
esparto is a Python library for building data driven reports with content from popular analytics packages.
- [Documentation][ProjectHome]
- [Source Code][GitHub]
- Contributing
- [Bug Reports][Issues]
- Create beautiful analytical reports using idiomatic Python
- Generate content from:
- Develop interactively with [Jupyter Notebooks][Jupyter]
- Share documents as a self-contained webpage or PDF
- Customise with [CSS][CSS] and [Jinja][Jinja]
- Responsive [Bootstrap][Bootstrap] layout
import esparto as es
Do some analysis
pandas_df = ...
plot_fig = ...
markdown_str = ...
Create a page
page = es.Page(title="My Report")
Add content
page["Data Analysis"]["Plot"] = plot_fig
page["Data Analysis"]["Data"] = pandas_df
page["Data Analysis"]["Notes"] = markdown_str
Save to HTML or PDF
page.save_html("my-report.html")
page.save_pdf("my-report.pdf")
Installation
esparto is available from [PyPI][PyPI] and [Conda][Conda]:
pip install esparto
conda install esparto -c conda-forge
poetry add esparto
Dependencies
- python >= 3.6
- jinja2
- markdown
- BeautifulSoup
- PyYAML
Optional
- weasyprint (for PDF output)
Documentation
User guides, documentation, and examples are available on the [project home page][ProjectHome].
Contributions, Issues, and Requests
Feedback and contributions are welcome - please raise an issue or pull request on [GitHub][GitHub].
Examples
Iris Report - Webpage | PDF | Notebook
[ProjectHome]: https://domvwt.github.io/esparto/ [PyPI]: https://pypi.org/project/esparto/ [Conda]: https://anaconda.org/conda-forge/esparto [Bootstrap]: https://getbootstrap.com/ [Jinja]: https://jinja.palletsprojects.com/ [CSS]: https://developer.mozilla.org/en-US/docs/Web/CSS [Markdown]: https://www.markdownguide.org/ [Pandas]: https://pandas.pydata.org/ [Matplotlib]: https://matplotlib.org/ [Bokeh]: https://bokeh.org/ [Plotly]: https://plotly.com/ [Jupyter]: https://jupyter.org/ [GitHub]: https://github.com/domvwt/esparto [Issues]: https://github.com/domvwt/esparto/issues