GSoC/GCI Archive
Google Summer of Code 2015


License: Apache License, 2.0

Web Page:

Mailing List:

WSO2 is an open source middleware company. All WSO2 products are 100% open source and released under the Apache License Version 2.0. The set of products correspond to about 20 different open source projects, which is a connected family of projects, based on one code base and a unified platform. Each project, in this family of projects, address a unique aspect of the open source middleware platform. The projects include back end technologies involving application integration, application development, API management, cloud platform as a service technologies, business process management and monitoring, complex event processing, data technologies and presentation technologies.

The operation model of the open source projects closely resemble the Apache way of open source operation. All projects are discussed, designed, built and tested in the open, using Apache like open source model.  



  • Data Wrangler extension for WSO2 Machine Learner WSO2 Machine Learner is a Server which provides Machine Learning on Big data. Wrangler [1] [2] is an interactive tool for data cleaning and transformation. Goal of this project is to add an extension for WSO2 Machine Learner for interactive data cleaning and transformation using Wrangler. Proposed Solution is to extend the Wrangler to generate Spark Transformations and integrate it into WSO2 Machine Learner by importing as a Javascript library and develop a jaggery interface interact.
  • Deep Learning for WSO2 Machine Learner Deep Learning (DL) can be identified as one of the most controversial recent Machine Learning techniques that attempt to perform effective feature extraction. DL is a representation learning technique recently invented. DL allows the businesses to leverage large unstructured datasets more effectively. Objectives of this project are developing a Jaggery [2] interface to interact with DL and implement DL in the underlying logical layer.
  • Extensible Visual Composer for Siddhi Language WSO2 Complex Event Processor is a real time analytic engine that support SQL like queries. Idea of the project is to build a visual composer for Siddhi language that provides a palette of operators and let users drag and drop those operators to a canvas and visually compose queries. WSO2 will provide a JSON description of operators, and the project involve developing a palette initialised with those operators and develop the canvas for visually composing queries.
  • Intelligent Siddhi Editor for WSO2 CEP Intelligent Siddhi Editor is a GUI based query editor for writing Siddhi queries in WSO2 CEP. This will be a web based solution which helps users to write Siddhi queries effectively and efficiently . The editor supports syntax highlighting, real time syntax validation with error high lighting. context-aware code completion, snippets suggestions and efficient mechanism to send the back-end calls to check the semantically accuracy of the query .
  • Project Proposal : WSO2 App Factory Command Line Tool The requirement is to develop a Command Line Tool to interact with WSO2 AppFactory, so that a user can perform functionalities on AppFactory platform via the CLI tool similar to using the Web based GUI interface. I am planning to use 'GO' as the scripting language to build the CLI Tool. The deliverable for the project is a command line tool which provides above mentioned capabilities and which is compatible with linux, windows and mac operating systems.
  • Proposal 13: ESB - End-to-end Message Tracing Support The end-to-end message tracing of message mediation flow need to be implemented based on WSO2 ESB and WSO2 BAM. The project requires changes at ESB core engine level as well as to write a new data publisher to BAM. Also, at BAM level, it needs to have the UI level support for tracing the entire message flow with BAM gadgets.
  • Recommendation Solution for WSO2 Machine Learner This project is focusing on adding a new feature for WSO2 Machine Learner which is a recommendation solution. The goal of the project is that a user should be able to use WSO2 Machine Learner as a recommendation engine. This will allow retail web sites to easily add recommending support using WSO2 Machine Learner.
  • User-Managed Access (UMA) Profile for OAuth2 User-Managed Access (UMA) is a profile of OAuth 2.0. UMA defines how resource owners can control protected-resource access by clients operated by arbitrary requesting parties, where the resources reside on any number of resource servers, and where a centralized authorization server governs access based on resource owner policies. This project is to implement UMA 1.0 support for WSO2 Identity Server by extending the OAuth 2.0 authorization framework implementation.
  • WSO2 ESB - JMS 2.0 Support for Transports and Inbound Endpoint WSO2 ESB mediate JMS message communication through JMS Transport and JMS Inbound endpoint. Due to its’ well maintained code base and comprehensive documentation, JMS communication has been one of the highly used feature in WSO2 ESB. But with only JMS 1.1 support JMS transport and inbound endpoint has become outdated and non-scalable.Therefor it would be really beneficial for the ESB users, to have JMS 2.0 support soon on WSO2 ESB.