Skip to content

Instantly share code, notes, and snippets.

Embed
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 https://api.loklak.org 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

Code

loklak Server

Project Subpart: Adding Stream and Mood API
Code Repository: https://github.com/loklak/loklak_server
Project Link: https://api.loklak.org/
Commits | Issues | Pull Requests

apps.loklak.org

Project Subpart: Implementing World Mood Tracker App
Code Repository: https://github.com/fossasia/apps.loklak.org
Project Link: https://apps.loklak.org/
Commits | Issues | Pull Requests

Blogs

All the blog posts I wrote during this project are accessible at FOSSASIA's blog: http://blog.fossasia.org/author/singhpratyush/.

Scrums

All my scrums are present in here.

Tweets

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

FOSSASIA Meetup

The meetup was conducted with @saurabhjn76 and @aviaryan.

Facebook Event | Tweet.

Deployments

Type Link Comments
Google Container Engine (Development) http://35.202.118.203/ Running as https://staging.loklak.org
Google Container Engine (Master) http://35.184.153.253/ Running as https://api-test.loklak.org
IBM Bluemix https://pratyush-cloud.eu-gb.mybluemix.net/ -
Google Compute Engine http://162.222.180.38/ Streaming enabled

Screenshots

loklak Server


Deployment

Classifier Endpoint

World Mood Tracker App


Landing Page

Tweet Stream for Country

Presentation

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

Screencast

The screencasts for this project are available here and here.


Thanks.

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.