Skip to main content

A Django reusable App for dynamically designing and generating reports for business intelligence.

Project description

Django ReportCraft

A Django reusable App for dynamically designing and generating data visualization and business intelligence reports

Summary of Features

Report Creation

  • Create and manage reports through a graphical designer.
  • Easily add new report entries using the intuitive interface.

Data Sources & Models

  • Data Sources: Configure models that provide data for reports.
    • Define the data source name, grouping fields, and record limit.
  • Data Source Models:
    • Add models to a data source.
    • Specify group expressions for data aggregation.

Data Fields & Expressions

  • Configure fields with attributes such as name, label, default value, and precision.
  • Expressions:
    • Use arithmetic operators (+, -, *, /, unary negation).
    • Reference Django field names using CamelCase and related fields with the . operator.
    • Group and nest expressions using parentheses.
    • Use string literals enclosed in quotes.
  • Supported Functions:
    • Django database functions (e.g., Sum, Avg, Count, etc.)
    • Custom functions (e.g., ShiftStart, ShiftEnd, Hours, Minutes, DisplayName).

Report Entry Types & Configurations

  • Table Entry:
    • Configure rows, columns, values, column totals, row totals, and transpose option.
  • Bar Chart Entry:
    • Set the X-axis and one or more Y-axis fields.
    • Options for sorting, color schemes, stacking, label wrapping, and orientation.
  • Pie Chart Entry:
    • Define value and label fields for pie slices with color customization.
  • XY Plot Entry:
    • Configure dual Y-axes for left (Y1) and right (Y2).
    • Supports both line and scatter plot options.
  • List Entry:
    • Define multiple columns with sorting and ordering features.
  • Histogram Entry:
    • Choose a numeric field, configure the number of bins, and select a color scheme.
  • Text & Rich Text Entries:
    • Display plain text or markdown formatted rich text.

Demo Application

A demo site showcasing an example configuration of various features is available in the repository. After cloning the repository,

poetry install
./manage.py migrate
./manage.py loaddata initial-data
./manage.py createsuperuser
./manage.py runserver

Open the browser to http://localhost:8000/admin and log in with the superuser credentials created in the previous step. Click the "View Site" link in the top right corner of the page to access the main page, also accessible from http://localhost:8000.

Documentation

Detailed documentation and screenshots are available at https://michel4j.github.io/django-reportcraft/.

Download files

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

Source Distribution

django_reportcraft-2025.9.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_reportcraft-2025.9.0-py3-none-any.whl (2.8 MB view details)

Uploaded Python 3

File details

Details for the file django_reportcraft-2025.9.0.tar.gz.

File metadata

  • Download URL: django_reportcraft-2025.9.0.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.7 Linux/6.15.10-200.fc42.x86_64

File hashes

Hashes for django_reportcraft-2025.9.0.tar.gz
Algorithm Hash digest
SHA256 90710838cbb007eb8c0cf5336670e76f8f774500f8651f1338b97f3217cd0ce7
MD5 6188077c1c141328884f7c8cce24057d
BLAKE2b-256 11e333726177f01373a42c6a9eae6a0ee541794859c906deb91336b4551ec6a3

See more details on using hashes here.

File details

Details for the file django_reportcraft-2025.9.0-py3-none-any.whl.

File metadata

  • Download URL: django_reportcraft-2025.9.0-py3-none-any.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.7 Linux/6.15.10-200.fc42.x86_64

File hashes

Hashes for django_reportcraft-2025.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 33c9acd6a779ec57ff0776c4f458c94dfd3e970053a53b337dc97f73e35984a4
MD5 1e58bb10dfa7a85c1d85ffac7003e539
BLAKE2b-256 5a1b3cc26a716bc0d554694f1e2ee760b34aca1b5b6dca832cdc3a13cf1400b3

See more details on using hashes here.

Supported by

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