A python package for reports generation.
Project description
Report Generators
This Python package provides a flexible and extensible framework for generating reports in multiple formats, including XLSX (Excel), CSV, and PDF.
Features
- Generate tabular reports in XLSX, CSV, and PDF formats
- Easily extendable for new report types and formats
- Utilities for formatting text and converting workbooks to CSV
- Base classes to help you implement custom report generators
Structure
src/report_generators/xlsx/– XLSX (Excel) report generatorsrc/report_generators/csv/– CSV report generator (inherits from XLSX generator)src/report_generators/pdf/– PDF report generatorsrc/report_generators/utils/– Shared utilities (text formatting, type definitions, workbook-to-CSV conversion)src/report_generators/base_generator.py– Base class for custom report logic
Usage Example
from src.report_generators.csv.generator import BaseCSVReportsGenerator
from src.report_generators.xlsx.generator import BaseXLSXReportsGenerator
from src.report_generators.pdf.generator import BasePDFReportsGenerator
# Implement your own BaseGenerator subclass for your data
base_generator = YourCustomBaseGenerator()
# Generate an XLSX report
xlsx_gen = BaseXLSXReportsGenerator("Report Title", base_generator)
xlsx_workbook = xlsx_gen.generate(items)
# Generate a CSV report
csv_gen = BaseCSVReportsGenerator("Report Title", base_generator)
csv_buffer = csv_gen.generate(items)
# Generate a PDF report
pdf_gen = BasePDFReportsGenerator("Report Title", base_generator)
pdf_buffer = pdf_gen.generate(items)
Installation
Install the required dependencies:
pip install -r requirements.txt
License
MIT License
Feel free to extend or customize the generators for your own reporting needs!
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file report_generators-0.1.0.tar.gz.
File metadata
- Download URL: report_generators-0.1.0.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f54fdc67de4850b1c415643d0a9fd4af8a936aa6bc882ada49fb59d4935dcdc6
|
|
| MD5 |
0d5c7ee7ed6194b581b5d8dbb1728a96
|
|
| BLAKE2b-256 |
4b05c3411ef33bbbe1d5c340f3ee7002af72739915972f04aad82567c8aad5bc
|
File details
Details for the file report_generators-0.1.0-py3-none-any.whl.
File metadata
- Download URL: report_generators-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbabe523232129b1c8097374c1fcea288b47eb617143443b0ce7340ebf30df40
|
|
| MD5 |
808f6216e30717ddece6bae3f5054145
|
|
| BLAKE2b-256 |
3b0046c429bba455acad217ae76030fd81b2436fe5861d1b679d82ff6b02ab0a
|