Standing tall @25834+/12684- : GSoC 2016

For those who do not recognize me, I am Pranay (21 | Male | India) and I study Computer Science at Indian Institute of Technology (IIT) Kharagpur. I am a student developer working for CiviCRM LLC as a part of the Google Summer of Code 2016 program. This was my maiden attempt at GSoC and I am now more into FOSS than ever before. The precursor to this blog is this one here.

This blog marks the end of my Google Summer of Code 2016 journey — from 0 to +25834+/12684- through 117 commits. I would like to start off by first thanking Google for organizing Google Summer of Code 2016 and changing the face of Free and Open Source Software (FOSS) in an unprecedented way. Next on the list is CiviCRM for being such a warm hosting organization and selecting me from among the thousand great applications this year. Finally, I would like to thank Brian Shaughnessy and Jaap Jansma — the best mentors I could have worked with, for always being there when I needed them and helping me throughout the journey. Last but not the least, I would thank Utkarsh Sharma — my friend from Indian Institute of Technology (IIT) Bombay, who worked with CiviCRM during GSoC 2015 and recommended me to apply to CiviCRM this year.

After almost 4 months of code.debug.repeat. cycle, I am proud to introduce the product which I worked on during GSoC 2016 — CiviREBUX. It is a native module extension for drafting CiviCRM-style reports via a drag-n-drop interface. It combines powerful visualization and transformation techniques which gives users full capabilities of modern browsers and the freedom to design the right elements for their reports. CiviREBUX also supports saving and loading of report templates for later use. By native I mean, it works equally well on all the three CiviCRM-supported CMS — Wordpress, Drupal and Joomla.

Civi(CRM)RE(port)BU(ilding)X(tension) — pretty cool for a name isn’t it?

CiviREBUX integrates seamlessly within your CiviCRM dashboard and goes live seconds after installing the extension. CiviREBUX is a mix of the most popular desktop-based spreadsheet software and fast browser applications — essentially, a spreadsheet software running on your browser.

Coming to the new functionalities that CiviREBUX has to offer to the CiviCRM users. Let me just briefly talk about all of them below —

  • Drag-n-Drop Interface

Users can add/remove attributes (rows and columns in your report) into/out of the scope by simply dragging them into/out of the rows (left) and column (top) space in the UI.

  • Cool Visualizations

Users can select how they want their data in the report to be visualized — tabular (default), bar charts, row and column heatmaps et cetera, powered using comprehensive D3.js and C3.js JavaScript libraries.

  • Export Options

Exporting the report template into CSV and TSV formats (available for download) is also support by CiviREBUX

  • Comprehensive Statistics

Users can choose which statistics do they wish to be displayed — unique count, sum, average, trimmed mean, minimum, maximum etc. along with dynamic aggregators viz. Monthly, Daily and Yearly, which will come in handy when they are dealing with reports spanning over time.

  • Filter and Search Records

Filtering and searching to locate specific records to be included in the report.

  • Saving and Loading Report Templates

Users can now save a report template to be loaded later. CiviREBUX also has added support for overwriting an already saved report template.

  • Adding Reports to Navigation Menu

For the users who are in a hurry, you can now add the most frequently used report template directly into the CiviCRM Navigation Menu under Reports >> CiviREBUX.

  • Viewing Saved Reports

Users can also load a report template by simply clicking the row corresponding to that template from the tabular list of previously saved report templates. Users can sort the templates by the Last Modified, ID and other fields as well.

Interested to try out CiviREBUX already? Install it directly from your CiviCRM Dashboard by clicking Administer >> System Setting >> Extensions.

Here is a video which shows how CiviREBUX can be the one reporting module CiviCRM users might be looking for since a long time.

CiviREBUX: The Final Look

Thanks to everyone for following the updates and blogs that I wrote as a part of my Google Summer of Code journey. Please feel free to reach out to me on Facebook or shoot me an email directly on and lets have a conversation!

For all the developer eyes out there, here are some of the important links —