Encouraging new contributors to join and spreading the word on open source

Open source has always caught the interests of us developers here at loklak. I had the opportunity to interact with quite a few students and share the GSoC experience, the open source work we’re doing here and how they could contribute.

On reaching the location BVRIT-Hyderabad, I was surprised to see a majority female audience waiting to listen and get started to open source. It was a great time interacting with them and telling them the journey from my side, my share of learnings and how they could get started to open source after a demo of the loklak application.

11754972_502743826554514_1948240322_o 11777462_502743749887855_1480290245_o

A few of the questions that were handled were

  1. What is open source ?
  2. Why do people contribute to open source software ?
  3. What are the required tools to get started to open source, How can you contribute ?
  4. What are the steps to make your first contribution ?
  5. What is Google Summer of Code ? How does the application process go ?
  6. What are the possibilities with FOSSASIA and Loklak ?
  7. How to get started to contributing to loklak on github ?

The event has seen quite some interest among the members present there with their Principal taking initiative to motivate more students into open source software development. This has resulted in quite some github activity for loklak, where there are members watching and starring the loklak project either to use it in a project of theirs or to contribute to the server and the webclient.

Encouraging new contributors to join and spreading the word on open source

Application structure and the making of an open source SPA

javadoc

Loklak Webclient would be the biggest SPA repo I have ever seen. Probably because of these two reasons:

  • Application structure was designed to be scalable from the beginning.
  • Application is as much independent as possible from external APIs

As the first reason is covered the in the previous part, this week we will take a look at the second version.

There are three API we are using locally in for Loklak Webclient

  • Iframely: To render data with rich content, we needed a service to debug the resource. Iframely was chosen because it’s open source and its node js implementation fits our repo perfectly.
  • Node-Oauth-shim: Twitter is using Oauth 1, which make it harder to implement Oauth to Twitter from the client without exposing application secret keys, hence, an oauth-shim service is needed. One very popular choice is Oauth.io. Although Oauth.io is open source, its application structure didn’t fit our application, and also is an overkill one. The only vanilla Javascript solution left is Hello.js and its Node-Oauth-shim service. The repo is highly recommended on Github, so as expected, the service works perfectly without any critical errors.
  • Loklak GeoLocation: this is a developing service at Loklak Server Api. At first we used OSM/GoogleMap APIs, however their implementation involves the whole library for a very small use of geo location, so we decided to look for another ways. Meanwhile, Loklak server cache are getter bigger and bigger so GeoLocation is more than just possible. Try this query!

Other than APIs, an application can’t “flourish” without external libraries. There are three place libraries are included in our application

    • If a node package is available, it is saved in node_modules and included with the help of Browserify
    • If not
      1. If it is required for other operations than the angular application, include it in a script tag, before the angular script.
      2. Else, include in app/components/ to be bundled together with the angular application

This way, with the help of build tools, we are able to minimize the number of http requests and the bandwidth to load Loklak Webclient, and make the world a better place 🙂

Application structure and the making of an open source SPA

Loklak gets a makeover !

Things have made tremendous progress since the last time we’ve posted. Loklak has undergone a massive design change and a lot of critical bugs were fixed. The loklak webclient which is the frontend to the loklak server has made tremendous enhancements and progress in this period. We now support an amazing authentication with twitter and the ability to post a tweet, favorite and retweet the tweets you see.

At the same time, the search functionality to the tweets harvested on the loklak server has undergone massive enhancements and it’s now possible to look for tweets which are only images, videos etc.., The tweets can also be visualized based on their location on an interactive map which shows more tweets in an area as you scroll and interact more with the details and markers present on the map.

A profanity filter has also been implemented allowing the users / creators of the wall to create the wall and only showcase the contents that’s suitable for showcasing during a conference where loklak wall is being used.

Screen Shot 2015-07-01 at 5.09.21 pm

Screen Shot 2015-07-01 at 5.19.52 pm

There’s still more exciting developments in progress so that the application reaches the final outcome. This is the 2nd Milestone we’ve accomplished and we’re striving to achieve more and deliver a better experience.

Your feedback is always appreciated, we’d love to know more about what you think. In case you have a feature in mind and want to talk to us, we’re available on the mailing list or you could always file an issue for a feature you’ve always wanted or to report a bug.

Interested in helping us ? Join us in its development on Github, Star us and show your support.

Loklak gets a makeover !