Installing ReportBro

Install and initialize ReportBro Designer

Move the dist folder from the ReportBro Designer download into your application. To embed ReportBro in your web application you need to include the ReportBro, jQuery, Autosize, JsBarcode, Spectrum JavaScript files as well as the ReportBro and Spectrum stylesheets in the <head> of your page.
Make sure to load jQuery before ReportBro's JavaScript.
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.8.0/spectrum.min.css"/>
<link rel="stylesheet" href="dist/reportbro.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.8.0/spectrum.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/autosize.js/3.0.20/autosize.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jsbarcode/3.8.0/JsBarcode.all.min.js"></script>
<script src="dist/reportbro.js"></script>
Place an empty div within the <body> of a web page:
<div id="reportbro"></div>
Now you are ready to go and initialize ReportBro:
<script type="text/javascript">
   $(document).ready(function() {
      $("#reportbro").reportBro();
   });
</script>

Install ReportBro Lib

The reportbro-lib package is a Python library to generate reports designed with ReportBro Designer. It can be installed on your Python webserver and integrated into your web application.
For open source and personal projects you may be just fine with using our publicly available ReportBro Server to generate your reports. Side effect is that the ReportBro logo will be displayed as a watermark image on the bottom of each page. Further you cannot add additional fonts and you have to pass all report parameters with your web request (this could be slow depending on the size of your data). We cannot guarantee availability of the server and response times may vary depending on the server load. However, being hosted on Python Anywhere makes it pretty reliable. Continue here if you want to run your own report server.

Installation Instructions

  • Install Python from Python Website
    ReportBro supports Python 2.7 and 3.5+. If you do not have Python installed use the latest stable 3.x release.
  • Optional: install a virtual environment (a tool to create isolated Python environments) for Python. See Creating virtual environments for further information.
  • Install ReportBro Lib with Python Package Manager pip
    $ pip install reportbro-lib

Report Server

In case you are already using a Python webserver (e.g. Django, web2py, Flask, Bottle or Pyramid) you can directly integrate the reportbro-lib into your existing application. In the Setup section you can have a look at a demo application available for Django and web2py. If you don't have an existing Python webserver you can use the following minimal report server implementation:
  • Download reportbro_server.py
  • Open a console and install sqlalchemy (SQL Toolkit) and tornado (web framework) libraries
    $ pip install SQLAlchemy tornado
  • Start the server
    $ python reportbro_server.py
This script starts a webserver on localhost which generates reports sent to /reportbro/report/run on port 8000.

You can add your own methods to this script where you query data for a specific report and directly return the generated report similar to the report function in the demo application described here. Instead of the in-memory sqlite db you need to connect to your application database to query your data.