Google Summer of Code 2019 Ideas

Google Summer of Code 2019 Ideas

Application Period for Students Starts on March 25

We're pleased to announce that the Mifos Initiative has been accepted as a mentoring organization for the 8th time. Our list of ideas and mentors is currently being finalized so please keep checking this page for more updates.

Aspiring students should introduce themselves on the mailing lists and begin fixing bugs or minor tickets related to the codebase you'd like to work on. 

Get Stoked - End Poverty. One Line of Code at a Time.





2019 Google Summer of Code - Get to Know Mifos

We're looking forward to participating in Google Summer of Code for our eighth year. In 2018, we worked with 13 interns from across the world who are continuing to make substantial contributions to our community. We hope to continue building our next generation of contributors who are joining in our movement to fight poverty through open source software. We want you to be part of our mission of creating a world of 3 Billion Maries.  

Students in 2019 will have the option to work on a variety of projects related to our front-end brand new web App built on top of the AngularJS framework, and our suite of cutting edge mobile apps that for both Fineract and Fineract CN - for Fineract, we have mobile field operations app, mobile banking app, and mobile wallet app. For Fineract CN, we have our field operations app and a client-facing mobile banking app. You'll also have the opportunity to build new tools like chatbots or machine learning-based scorecards on the platform.

In addition, we'll be working with students on both our Apache Fineract 1.0 platform for financial inclusion and Apache Fineract CN application framework for digital financial services. 

The best way to understand what we do is to watch a few videos. 

What is Mifos and What Does our Community Do?

|

Why Does Google Summer of Code matter so much to Mifos and what do we look for in students? 

How is the Mifos software used? 

2019 GSOC Mentors

In Progress

The list of mentors for 2019 is currently being finalized. 



We have a talented and passionate group of mentors from across our global community who are eager to help guide the next generation of HFOSS contributors. These mentors come from various backgrounds - partners deploying Mifos, financial institutions using Mifos, volunteers, and even former GSOC students but they all share a common goal of ending poverty one line of code at a time!

Mentor

Project

Location

Time Zone

Mentor

Project

Location

Time Zone

Mobile

India

IST (GMT +5:30)

Mobile

India

IST (GMT +5:30)

Mobile

India

IST (GMT +5:30)

Mobile

India

IST (GMT +5:30)

Web

India

IST (GMT +5:30)

Web

Nigeria

WAT (GMT +1:00)

Fineract CN

Cameroon

WAT (GMT +1:00)

Platform

India

IST (GMT +5:30)

Mobile

India

IST (GMT +5:30)

Platform

Cameroon

WAT (GMT +1:00)

Kelvin Ikome

Platform

Cameroon

WAT (GMT +1:00)

Platform

India

IST (GMT +5:30)

Raul Sibija

Platform

Mexico

CST (GMT -6:00)

Karina Ortiz

Platform

Mexico

CST (GMT -6:00)

Gustavo Espindola

Mobile

Mexico

CST (GMT -6:00)









Manoj VM

Platform

India

IST (GMT +5:30)

Web

India

IST (GMT +5:30)

Web

India

IST (GMT +5:30)

Platform

USA

CST (GMT -6:00)

Web

India

IST (GMT +5:30)

Platform

India

IST (GMT +5:30)

Mobile

India

IST (GMT +5:30)

Web

India

IST (GMT +5:30)

Patrick Finken

Platform

Canada

IST  (GMT -5:00)

Rachit Kansal 

Tentative

India

IST (GMT +5:30)

Platform

USA

EST (GMT -5:00)

Platform

Serbia

CET (GMT +1:00)

Platform

USA

PST (GMT +8:00)

Platform

india

IST (GMT +5:30)

Platform

India

IST (GMT +5:30)

Fineract CN

Cameroon

WAT (GMT + 1:00)

Fineract CN

Cameroon

WAT (GMT+1:00)

Guidelines

  • Getting started Read about setting up the code and understand the basic concepts around MifosX.

Expectations

Students working on Mifos X will be expected to:

Prerequisite Skills

Basics

  • Be a quick learner

  • Be well-behaved, act in good faith and be of good humour.

  • Troubleshooting Wizard

  • Passion for writing beautiful code

  • Excellent communication skills

  • Knowledge of developer tools

    • such as: a text editor, source control, how to build software

    • experience with specific tools will also help, such as: Eclipse IDE, Git

Mifos includes wide variety of technologies, we do not expect a student to be expert on all of these. But it will be helpful if you have some experience in some of these. Helpful skills (specific technology requirements vary with project chosen):

  • Java, Spring, MySQL, Jersey & Hibernate

  • HTML, CSS, JavaScript (JQuery), AngularJS & Material Design

  • JUnit, REST-assured

Source Code

Mobile App Overview: https://openmf.github.io/mobileapps.github.io/

Apache Fineract CN (Gen 3)

Mifos X and Apache Fineract 1.0 (Gen 2)

Hints



Project Ideas

In Progress

Our 2019 Ideas lists is currently being refined. Stay tuned for additional updates. 

All 2019 projects will be related to the Mifos X Web App, our mobile apps including our Android Field Operations app, our Mobile Banking app, or our Mobile Wallet App or our Online Banking App. Some projects will also center directly around the Apache Fineract platform for financial inclusion and additional tools, features, our modules on that and our brand-new Apache Fineract CN application framework for digital financial services as well as the mobile apps connecting to Fineract CN.  These apps and modules are built on top of the Apache Fineract platform, the world's only open platform for financial inclusion and is banking delivered as a service via the cloud. Apache Fineract is a true platform in which the back-end is cleanly separated from the front-end and all core platform services are exposed through an API making it easy develop new applications on top of the Apache Fineract platform. 

Fineract CN Mobile 3.0 

Mentors

@Rajan Maurya

Category

Mobile - Apache Fineract CN 

Overview & Objectives

Just as we have a mobile field operations app on Apache Fineract 1.0, we have recently built out on top of the brand new Apache Fineract CN micro-services architecture, an initial version of a mobile field operations app with an MVP architecture and material design. Given the flexibily of the new architecture and its ability to support different methodologies - MFIs, credit unions, cooperatives, savings groups, agent banking, etc - this mobile app will have different flavors and workflows and functionalities. 



Description

In 2018, our Google Summer of Code intern worked on additional functionality in the Fineract CN mobile app. In 2019, the student will work on the following tasks:

  • Add Multiple account login and maintain session of the account.

  • Add Passcode feature to avoid the everytime login.

  • Sync Adapter to sync clients and client data that is assigned to him.

  • Add Kotlin support in app and initially change the retrofit models in kotlin.

  • Add review screen in every new records creation form.

  • Edit Loan application feature if loan is not approved 

  • Add new data views in different different pages like customer detail page according to API, same as in loan, deposit account details 

  • Add feature to take high quality picture and compress with the same quality for uploading (Uploading feature already exist, student need to enhance picture quality)

Helpful Skills

Android development, SQL, Java, Javascript, Git, Spring, OpenJPA, Rest,

Impact

Allows staff to go directly into the field to connect to the client. Reduces cost of operations by enabling organizations to go paperless and be more efficient.

Other Resources

https://github.com/openMF/Fineract-CN-mobile

JIRA Task

https://issues.apache.org/jira/projects/FINCN/issues/FINCN-7

Mifos X Web App Angular 6 Rewrite

Mentors

@Gaurav Saini, @Pranjal Goswami, @Maulik Soneji

Category

Web - Mifos X Web App

Overview & Objectives

Our AngularJS Web App is the standard application on the Mifos X distribution that provides all the core functionality for the most common methods of financial inclusion and products and services. It's also the starting point for any partners looking to customize or extend the UI. It's constantly being improved based on user feedback, better performance, and to integrate new design standards.

Description

In 2018, we made the decision to re-write the entire Mifos X web app from Angular 1.75 to Angular 6 providing cleaner Material design, access to brand new libraries, better theming/skinnability, and a more stable and modern codebase. Only a portion of the application was re-written so this would project would continue and bring it to completion. You can see the in-progress new UI at https://openmf.github.io/web-app/ (mifos/password)

The entire web app needs to be re-written so a list of tickets of remaining work which will be part of project can be found at https://github.com/openMF/web-app/projects/2

Some additional work also includes adding in comprehensive keyboard shortcuts to enable power-users of the app and to ensure that the tabs and arrow keys work appropriately for navigating through the app. 

Helpful Skills

Javascript, SCSS, HTML5, Angular 6, Angular Material, Flex Layout

Impact

Enhanced User Experience, Intuitive application design

Other Resources

Usability and Design

Improve Robustness of Mifos X and Apache Fineract by Fixing Issues/Feature Requests in Backlog

Mentors

@Rahul Goel

Category

Platform

Overview & Objectives

Mifos X and Apache Fineract is widely used by financial institutions of all different sizes and methodologies around the world. With that widespread user base there is a vast array of different processes and procedures that would like to be supported as slight modifications over the common functionality provided. Over the past several years, we have captured these minor enhancements in our issue tracker as feature requests. Also included in this backlog or additional minor and less critical bugs that have been reported but have not been fixed yet.  This backlog has grown and it would be a very impactful project for an intern to work on completing as many of these bug fixes and minor enhancement as possible.

The difficult level of these issues ranges from low to higher and touch all componets of the platform - most don't require too much domain knowledge but some will. 

Description

We have groomed the backlog and tagged issues and feature requests that are relevant for this project with the labels gsoc and/or Volunteer.  Priority level of tasks is measured by p1 being the highest priority. Tasks with an assigned fix version of either 1.4.0 or 1.5.0 have a higher priority. 

There are more than 120 tickets in the saved filter. You are not expected to complete all of the tasks in the backlog but throughout the internship you should fix as many issues/feature requests as possible. You will work with your mentor to deliver a plan for each sprint and adjust velocity as you get scaled up.

Issues to be worked on can be found at https://issues.apache.org/jira/issues/?filter=12345785 - the saved filter is named 2019 Intern Project. 

Helpful Skills

HTML, Spring, Hibernate, REST, Java, AngularJS, Javascript, SQL

Impact

Better internal control and financial transparency

Other Resources

Getting Started with Apache Fineract: https://cwiki.apache.org/confluence/display/FINERACT/Getting+Started+Docs

Strengthen/Harden Fineract 1.x to LTS Version by Upgrading Spring & Improving Code Coverage of Tests