GSOC 2014 Introduction

Hello everyone! I’m Arian, a Computer Science student. I’m one of the students accepted in the Google Summer of Code program, and my project will be Glotpress! I’ll be working on the UI improvements and Profiles, and I’m very excited on building something awesome this summer!

As it is right now, there’s not a lot much in Glotpress for user recognition, and this project aims to fix that. Here’s a short list of features to be implemented:

  • A powerful dashboard, giving you quick shortcuts to projects you’re contributing to.
  • Profile to facilitate stat viewing, such as word count, translation contributions, etc.
  • Badging system, earn badges and show them off your profile by translating a set amount of strings!
  • JSON API for user stats.
  • UI improvements, such as progress bar based ui, and links to translation set validators.

For those interested, you can view the complete, revised scope here:

This week, I’ve managed to fully implement the user dashboard.

Related Tickets:,

As you can see we now have the basic stats present, such as the total strings translated and projects contributed to. The graph on the left shows translation statistics from the past week, which will hopefully encourage translators to keep up their translation streak!

The recent projects follow the traditional table Glotpress view, while using a more compact way of showing progress, a progress bar!

The user dashboard’s ui is starkly different from the initial proposal, but it’s current form works very well alongside the actual Glotpress ui; much more efficient than the previous designs that had a lot of unneeded whitespace.

Different reiterations of the ui

Development has been on schedule, and for next week, apart from improving the week’s code by adding Unit Tests and the like, I’ll be working on the notification system, which will hopefully be a big help to validators in knowing when they have new strings to accept/reject.

That’s all for now. Feel free to comment below if you have any questions or think of an idea for improvement, the scope implementation is very much dynamic!