RSS Amplifier

magarcia · Jun 29, 2016

Midterm

0
Sign in to vote or save

magarcia

GSoC midterm just passed. Time to review the work since the project started. After these weeks working on Jangouts and using it regularly for follow-up meetings, I love it as if it were my own. Working on this project is rewarding: small enough to grasp, yet backed by a growing community. Jangouts remains in an early stage but has great potential.

Work done

I missed my initial timeline, but I am close and the hardest part is over. Jangouts now uses TypeScript with a new build/development process and runs as a hybrid Angular 1.x/Angular 2 application.

Jangouts is composed of different components:

  • browser-info
  • chat - Migrated
  • feed - Almost migrated
  • footer - Migrated
  • notifier
  • room
  • router
  • screen-share
  • user
  • videochat
  • signin

Each component migration involves conversion from Angular 1 to 2 and tests targeting near 100% coverage. The most complex components to migrate are feed and room because they handle video rendering and Janus backend communication. The router will likely require a complete rewrite for the new Angular 2 router.

Mentors

I have only good things to say about @ancorgs and @imobach. We hold daily meetings (when possible), and they give me feedback while allowing me freedom to make my own decisions (when I provide reasons).

Next steps

In the coming weeks, I will continue migrating components until Angular 1 can be removed. When migration finishes, Jangouts will be an Angular 2 project with a comprehensive test suite. My GSoC work will be complete, but I want to do more. Many things can improve:

  1. Restructure the project by moving logic from components to services.
  2. Leverage Observables better (probably using @ngrx/store)
  3. Improve UI and mobile UX using progressive web app concepts.
  4. Improve communication and community (project webpage, better contribution docs, etc.)

Read the original on magarcia.io

Comments

Nothing yet. Say the first thing.

    Sign in to join the conversation.