Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bakepy-0.0.11.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

bakepy-0.0.11-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

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

Hashes for bakepy-0.0.11.tar.gz
Algorithm Hash digest
SHA256 00fdbfd3388704a70cb374d361bf7dc46dafdb9487ffdcbaf90c73b31b99a35f
MD5 77ff9d4398acf81a665ec2605e7bf65d
BLAKE2b-256 eced2e08ef7dc0c9fe8cdaefcc91c6b7ebd77eee5c0e6d3e3e3780d749c194f0

See more details on using hashes here.

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

Hashes for bakepy-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 cfe0241a56ebe67de677c64e935f015734afb8659abe093f0e2c2627fc8a465f
MD5 da61b72e8705c92bc70254ed5b2a79a6
BLAKE2b-256 8937e9d13112ea74043a1205b9a174b1d3cad2595d32af285e79a8822170bf0b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page