Today, Google Summer of Code has officially started. It is time students get to code. Google Summer of Code (GSoC) is a global program that offers students stipends to write code for open source projects. I will be working with the Drupal community on a project called Social API.
This project tries to harmonize social networking functionality in Drupal, providing an extensible module that allows site administrators and developers enable options for autoposting to and user authentication via social networking’s services, as well as making use of these services’ widgets.
It is worth to mention I am not alone. I receive support from my fantastic mentors: Mateu Aguiló Bosch (e0ipso) and Daniel Harris (dahacouk), as well as from the Drupal Social Initiative group and other GSoC mentors (I’d say the entire Drupal community).
During the community bonding phase, I had two meetings with my mentors. The most important topic we agreed was to separate the Social API project into 4 different modules:
- Social API: contains the basic and generic methods, routing settings, and permissions every Social API sub-module will need
- Social Auth: implements methods and templates that will be used by login-related modules
- Social Post: provides methods to allow autoposting to social network’s accounts
- Social Widgets: allows sub-modules to add functionality to add widgets (like buttons, embedded content) to node, blocks, etc.
Our meetings were recorded and are available on Youtube.
We have created a Trello board listing tasks needed to complete the first phase of the project. This board is publicly available. We also have the Social API roadmap which is available at thedrupal.org module page.
I have identified already-existing modules on drupal.org which I would like them to adopt Social API as their base. For the scope of this project during GSoC, I will work on some Facebook-related modules. One of them is Simple Fb Connect which allows users to login to a Drupal site using a Facebook account.
The module was still implementing the Facebook PHP SDK 4 which makes thing messy as until this version, the SDK was not implementing semantic versioning. This causes errors when trying to use the module with another project that requires a different version of the SDK. Thus, I am helping to upgrade the SDK used by this module.
Moreover, I have been already working on my GSoC project, and currently have an initial module to login to a Drupal site using Facebook . This modules is based on the social_api and social_auth project (Simple Fb Connect for Social API basically), and it’s available on this repository.
In the next blogpost, I will describe the achievements and problems (hopefully none) I have during my first week of official code time.