Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Work product submission for GSoC 2017 project

Google Summer of Code 2017 Work Product Submission

Student: Pratyush Singh (@singhpratyush)
Organisation: FOSSASIA
Project: Add Endpoints to Loklak API and Implement World Mood Tracker

Overview of Work Done

Mood API

The mood API serves aggregated data from classifiers present in loklak server, namely emotion, profanity and language. Users can request the data from these classifiers based on date and country of creation of message. It is accessible at /api/classifier.json endpoint.

Stream API

The stream API can be used to subscribe to messages as they arrive at loklak. Users can get a stream of messages over a long lived HTTP connection and save themselves from the trouble of making multiple requests to collect messages. It is accessible at /api/stream.json endpoint.

World Mood Tracker App

World Mood Tracker app uses mood API to display aggregated data from classifiers on a map. Users can also see live Tweets from a country by clicking on it in the map.

Other Contributions

Other major contributions include -

  • writing configurations for Kubernetes
  • continuous deployment from Travis
  • improving URL unshortening
  • introducing priority kaizen harvesting strategy
  • improving look for page
  • improving video fetching service
  • adding Jacoco for coverage reports
  • adding Checkstyle for linting
  • improving code quality of various packages
  • reviewing PRs and opening issues in other repositories of FOSSASIA
  • helping co-developers with deployment on Kubernetes


loklak Server

Project Subpart: Adding Stream and Mood API
Code Repository:
Project Link:
Commits | Issues | Pull Requests

Project Subpart: Implementing World Mood Tracker App
Code Repository:
Project Link:
Commits | Issues | Pull Requests


All the blog posts I wrote during this project are accessible at FOSSASIA's blog:


All my scrums are present in here.


All Tweets posted related to my GSoC project are available here.


The meetup was conducted with @saurabhjn76 and @aviaryan.

Facebook Event | Tweet.


Type Link Comments
Google Container Engine (Development) Running as
Google Container Engine (Master) Running as
IBM Bluemix -
Google Compute Engine Streaming enabled


loklak Server


Classifier Endpoint

World Mood Tracker App

Landing Page

Tweet Stream for Country


A slideshow giving overview of work done during GSoC 17 is available here.


The screencasts for this project are available here and here.


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.