GSoC/GCI Archive
Google Summer of Code 2015

Drupal

License: GNU General Public License version 2.0 (GPLv2)

Web Page: https://groups.drupal.org/node/455978

Mailing List: https://groups.drupal.org/google-summer-code

Drupal is an open source content management platform powering millions of websites and applications. It’s built, used, and supported by an active and diverse community of people around the world.

Projects

  • Content Staging Solution for Drupal 8 Ability to stage content is a highly desired feature in many circumstances. One of the most important component of this content staging system is the replicator, which is responsible for managing the transfer of the content between sites. I would primarily be working on this component and it will be based on the CouchDB Replication Protocol. It will be integrated into Drupal with a Drush plugin and a simple UI.
  • Extending Site Audit Site Audit is a Drupal static site analysis platform that generates reports with actionable best practice recommendations. Site Audit uses a technique known as static program analysis. The aim of this project is to port the project to Drupal 8, interview Drupal agencies and other industry professionals to identify and implement additional checks and reports and write unit tests for the project.
  • Hawk Authentication integration for Drupal 8 Hawk is an HTTP authentication scheme using a message authentication code (MAC) algorithm to provide partial HTTP request cryptographic verification. This project is to build a module to support this authentication method in Drupal 8.
  • Linked Data mapping tool for Drupal 8 and the Google Knowledge Graph The main goal of the project will be to allow site builders to map their content to Freebase and WikiData while authoring content with Drupal 8. There will be two main components for this work. 1. Entity level mapping tool - to map entity types such as nodes, taxonomy terms with Knowledge Graph. 2. CKeditor plugin for inline Content mapping - to map content created using Drupal's built-in WYSIWYG editor to Knowledge Graph
  • Making Drupal smarter by learning from users behavior Artificial Intelligence is a hot topic these days and with this project we are trying to integrate AI with Drupal. We aim at optimizing a Drupal website by using a class of algorithms called multi-armed bandit algorithms which use reinforcement learning to display the content variations that are most likely to have the highest success. The project will provide a general framework for conducting such experiments and hopefully it will be the starting point for more advanced AI usages in Drupal.
  • Port print module to Drupal 8 Module details:https://www.drupal.org/project/print. The present module lacks support for recent Drupal features such as generic entities and fields and also requires code refactoring due to presence of redundant code. The proposed solution makes use of API's made available(mainly Plugin and Entity ) in Drupal 8 to make the architecture more stable and pre-processing on node's content more robust.The module will have to be renamed since Symfony prevents the use of the reserved keyword "print".
  • Port Quick Tabs module to Drupal 8 Quick Tabs module is presently being used by more than 80,000 websites. The module provides an easy way to render tabs using Ajax as block of contents. To extend QuickTabs renderer plugins are used. The goal of the project is to port the module to D8 and write tests for both PHP code and JavaScript code of D8 version.
  • Port security_review to Drupal 8 Drupal is fairly secure by default, but there some security related settings that are up to the user. Security Review helps the webpage administrator find these configuration options, and ensures that they are set to their most secure setting, ranging from server related configuration to Drupal's itself. The project goal is to port the Security Review module to Drupal 8, so that users will have an option for checking security configuration in the new version.
  • URL embed module for Drupal 8 To build a framework for CKEditor which would allow an end-user to display an embedded representation of a URL, the content of the URL can be a video, images, rich text or a link. This framework will handle URLs from various third party sites and essentially replace oEmbed Module from Drupal 7. For more details : https://groups.drupal.org/node/455978#project16