Django Slick Reporting

Django Slick Reporting a reporting engine allowing you to create & display diverse analytics. Batteries like a ready to use View and Highcharts & Charts.js integration are included.

  • Create group by , crosstab , timeseries, crosstab in timeseries and list reports in handful line with intuitive syntax

  • Highcharts & Charts.js integration ready to use with the shipped in View, easily extendable to use with your own charts.

  • Export to CSV

  • Easily extendable to add your own computation fields,


To install django-slick-reporting with pip

pip install django-slick-reporting


  1. Add "slick_reporting", "crispy_forms", "crispy_bootstrap4", to INSTALLED_APPS.

  2. Add CRISPY_TEMPLATE_PACK = "bootstrap4" to your

  3. Execute python collectstatic so the JS helpers are collected and served.


You can start by using ReportView which is a subclass of django.views.generic.FormView

# in
from slick_reporting.views import ReportView, Chart
from slick_reporting.fields import ComputationField
from .models import MySalesItems
from django.db.models import Sum

class ProductSales(ReportView):

    report_model = MySalesItems
    date_field = "date_placed"
    group_by = "product"

    columns = [
            method=Sum, field="value", name="value__sum", verbose_name="Total sold $"

    # Charts
    chart_settings = [
            "Total sold $",

# in
from django.urls import path
from .views import ProductSales

urlpatterns = [
    path("product-sales/", ProductSales.as_view(), name="product-sales"),

Demo site is a quick walk-though with live code examples

Next step Tutorial

Indices and tables