BakePy Reporting Library
Project description
BakePy
Create good-looking documents programatically and easily
BakePy was conceived as an way to create good-looking documents in Python without messing with templates or difficult layout systems.
Creating a BakePy Report is simple:
import pandas as pd
from datetime import datetime as dt
from bakepy import Report
r = Report()
r.recipe("title", "Example BakePy Report")
r.recipe("markdown",
f"""
### {dt.now().strftime("%Y-%m-%d")}
""")
#We want to center text in the current column.
r.set_col_cls("text-center")
#A separator
r.recipe("separator")
#Some variables
a = 4
color = "blue"
l = ["red", 3, False]
#Replacing variables in generated text.
r.recipe("markdown",
f"""
We can add markdown and use the power of Python to mix:
- Variables, like a={a}
- Conditional formatting, like adding the <span style="color:{color}">color {color}</span>
- And even directly transform Python objects beyond things like the list: {l}
"""
)
#Now we add some more text, this time in the same row we were at before.
r.add("<h2> See some examples below! </h2>", new_row = False)
#We can even add items to the same column!
r.recipe("spacer", level = 3, new_col = False)
r.add(
"""
For example, Pandas Dataframes and Matplotlib Figures
""", new_col = False)
#Adding a DataFrame in a new line.
data = {
"cost": [10, 23, 40],
"gain": [20, 40, 45]
}
df = pd.DataFrame(data)
r.add(df, caption = "This is a table")
#We set row items to be aligned at the center.
r.set_row_cls("align-items-center")
#Adding a plot on the same line.
r.add(df.plot(x="cost", y="gain"), size=6, caption = "This is a figure", new_row=False)
#Saving the report
#An image
r.recipe("img",
"https://upload.wikimedia.org/wikipedia/en/thumb/8/80/Wikipedia-logo-v2.svg/800px-Wikipedia-logo-v2.svg.png",
size = 2,
caption = "Adding an image from the Internet.")
r.save_html("example_report.html")
Simple to use, easy to hack
BakePy is designed to automatically transform Python objects such as Matplotlib Figures and Pandas DataFrames into HTML code. By using Bootstrap 5's grid you can easily arrange markup, mathematical formulas, plots and tables without needing boilerplate code.
If you need more customization, you can easily add CSS stylesheets in order to make the Report look exactly how you want it to.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bakepy-0.0.11.tar.gz
.
File metadata
- Download URL: bakepy-0.0.11.tar.gz
- Upload date:
- Size: 14.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.23.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00fdbfd3388704a70cb374d361bf7dc46dafdb9487ffdcbaf90c73b31b99a35f |
|
MD5 | 77ff9d4398acf81a665ec2605e7bf65d |
|
BLAKE2b-256 | eced2e08ef7dc0c9fe8cdaefcc91c6b7ebd77eee5c0e6d3e3e3780d749c194f0 |
File details
Details for the file bakepy-0.0.11-py3-none-any.whl
.
File metadata
- Download URL: bakepy-0.0.11-py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.23.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfe0241a56ebe67de677c64e935f015734afb8659abe093f0e2c2627fc8a465f |
|
MD5 | da61b72e8705c92bc70254ed5b2a79a6 |
|
BLAKE2b-256 | 8937e9d13112ea74043a1205b9a174b1d3cad2595d32af285e79a8822170bf0b |