24 September, 2014
Filed under GSoC


I am Siddharth Gupta, and this post is an update from my last post about civisualize and a small summary of my last three months as a Google Summer of Code student for CiviCRM.

To start with, I would first like to thank all the mentors, Xavier, Gordon and Max. Your help and support over the last three months was indispensable. I really am proud of the fact that I could contribute something to the open-source community in the form of small contributions to dc.js and CiviCRM.

Google Summer of Code happened to me like a long dramatic story, to cut the story short, I was one of the admins of byld - software development club at my institute and few of the club members who were associated to GSoc as a mentor and student organized this talk telling all of us about Google Summer of Code. After the list of organizations were released, I started looking for an organization and luckily CiviCRM was the first organization I came...

Read more
08 September, 2014
Filed under GSoC

Hi I am Aditya Nambiar a third year undergraduate student pursuing Computer Science at IIT Bombay.This is final blog post on my project - Visualization for Mailing stats and A/B testing. I shall be explaining the work flow of my project in the blog post

Listing Page

The first page is the listing page where all the scheduled and drafted A/B tests are listed out. If any A/B test has been “submitted and sent” then one can view the results, if it has not yet been submitted and sent then one can edit it. Only one option edit/ result is visible at any time.

The button "New A/B Test" allows a user to start a new A/B test.

Creating a A/B test

Creating a new A/B test consists of 4 UI tabs.

First Tab


Read more
08 September, 2014
By rajgo94
Filed under GSoC

Hi, I'm Siddhant Rajagopalan, a third year Undergraduate student studying CSE from IIT Bombay.

This is the final blog post regarding my GSoC project, “Mail Blast UI”.

My blog post which talks about my project can be seen at


My midterm blog post can be seen at


The code is available on my gitHub.

The link is https://github.com/rajgo94/civicrm-core/tree/mailingui-new.


I have currently kept the UI as a 3 tab...

Read more
16 August, 2014
By teja
Filed under GSoC


Bootstrap CSS for CiviCRM UI was conceived as a project to provide a templating layer to native CiviCRM elements.  For the past three months, my efforts for focussed on this. As we come to the end of my GSoC project, here are some updates.

It was decided initially that the project should prioritize user-centric pages and then follow up with administration console pages. Hence, I began working with front-end pages including Profile and Contribution pages.

Profile Page:

Contribution Page :



       An added advantage of this approach was CiviCRM pages that were mobile friendly and easily scalable.  


... Read more
16 July, 2014
Filed under GSoC

Hi I am Aditya Nambiar, and I am currently working on Visualization for Mailing Stats and A/B Testing which is my GSOC 2014 project. I am at the midterm stage of my project and would like to share the progress I have currently made. Please do give your valuable feedback and suggestions. Here is the link to my previous blog https://civicrm.org/blogs/adityanambiar/ui-mockup-ab-testing-civimail


Currently the entire A/B testing has a tabular UI which we have created using AngularJS. The user has to follow the sequence of tabs and cannot jump ahead since the other tabs are disabled and are enabled only when the User has successfully entered all the form data required in previous tabs. However once the tabs are enabled the user can jump from any enabled tab to another to make the changes he wants to.


The first tab is “Campaign” which...

Read more
15 July, 2014
By rajgo94
Filed under GSoC

Hi, I'm Siddhant Rajagopalan, a second year undergraduate student studying CSE from IIT Bombay.

I am currently working on improving the usability of CiviMail as my GSoC 2014 project. We are at around the midterm stage of the project, this post is to get feedback on the progress made.

My previous blog post which talks about my project can be seen at https://civicrm.org/blogs/rajgo94/mail-blast-ui-mockups-and-plan-coming-weeks.

I greatly appreciate the feedback received for that blog post.

We stuck to a tab UI made using AngularJS based on the feedback received for the mockups. We can switch from one tab to another interactively.

The code is available on my github. If interested do check https://...

Read more
09 July, 2014
By teja
Filed under GSoC

As I have been working to customize CiviCRM CSS to Bootstrap CSS. In the process, to change labels like input text, dropdowns I have made changes in \civicrm\packages\HTML\QuickForm\input.php , But found that this is not the correct way to customize because if HTML-QuickForm is updated the entire changes to the code will be lost . So to overcome this problem I found another location within the CRM where this customization is done and the location is civicrm\CRM\Core\Form\Renderer.php (For initial stages, I have been testing on form and the location will change depending on the element taken). Special thanks to Emily in sorting the things out.

With this I can now customise the input-text fields, dropdowns and many more without making anychanges to the HTML_QuickForm.

Snapshot of the Update is as follows:-

In the above snapshot, the input-text fields and...

Read more
03 July, 2014
By teja
Filed under GSoC

I want to share some midterm updates regarding my GSOC 14 project- Bootstrap for CiviCRM

As many suggested that both the original UI of Civi and Bootstrap UI should co-exist, I took form elements as the basis and tried on re-working from original UI to Bootstrap UI and I have had some success in doing that.

Task 1:

My main task at the beginning of project was to map the templates files in the CiviCRM core for all relevant elements. I could find the files after some digging (Special thanks to Jeremy for helping me out). The Templates files are placed at civicrm\civicrm\templates\CRM

Task 2:

Once I found out the relevant files the main task was combining and integrating Bootstrap CSS file with CiviCRM css file. I wrote the styling in .less and compiled into .css and the file was placed in \civicrm\civicrm\css\civicrm.css
Once I have done that it was...

Read more
25 June, 2014
Filed under GSoC

Has your constituency base increased more at the start of last year or this year? Is your organisation receiving more contributions on weekends or weekdays? Does your event has more participants than it had last year? I am pretty sure all of you must come across these questions and with the number of features CiviCRM offers the number of such question is very big. In this post, I will be talking about my Google Summer of Code project and is excited to introduce you all with Civisualize, an extension which can surely help you answering most of the above questions and a lot more.

Hi, I am Siddharth Gupta, a fourth year undergraduate at IIIT Delhi, India. I have been selected for Google Summer of Code 2014 for Ready to Use Data Visualizations - CiviCRM mentored by Xavier Dutoit from Tech to the People, Gordon Woodhull from AT&T Labs and dc.js and Max Hunter and Electronic Frontier Foundation.

I would like to start this post by...

Read more
15 June, 2014
Filed under Drupal 8, GSoC, Drupal

I was accepted into the Google Summer of Code program this year to write the Drupal 8 integration modules for CiviCRM and work has progressed well so far. Drupal 8 is on track for a release this year and hopefully CiviCRM will be Drupal 8 ready about the time it goes final.

The integration is quite a large project and in the planning/proposal phase I separated the work into 6 phases. The first 3 phases are broadly concerned with allowing CiviCRM to boot and to be able to access the bits of Drupal (ie. users) that it needs to. The final 3 phases were to implement the opposite: they are about enabling Drupal to interact with CiviCRM data, for example via Views or Rules.

To run through them briefly, phase 1 is a bare bootstrap, with only as much functionality implemented so that CiviCRM can run simple pages. For this phase, anything that requires CiviCRM to ask Drupal about users, or permissions, etc. would fail. Phase 2 involves fleshing out this missing functionality...

Read more