2025 Mifos Summer Intern Wrap-up

We were successful in graduating 22 interns across three internship programs in 2025. Full recaps of each intern will be shared soon. In the meantime, please view our Finals Week Showcase playlist for a recap of each project:

2025 Interns

Student

Mentor

Category

Project

Final Report

Final Showcase

AI Enablement

Voice Driven Banking via LAM (C4GT)

Mifos Finals Week Day 4 – AI Enablement

AI Enablement

Accessibility and Language Improvements to increase inclusion in Apps (C4GT)

Mifos Finals Week Day 4 – AI Enablement

Oreoluwa Oluwasinak

AI Enablement

AI-Driven Testing Framework for Security (GSOC)

Mifos Finals Week Day 4 – AI Enablement

AI Enablement

MCP Server for Agentic API Operations (GSOC)

Mifos Finals Week Day 4 – AI Enablement

@

AI Enablement

Generative AI Chatbot for Community Support (GSOC)

Mifos Finals Week Day 4 – AI Enablement

Devarsh Shah

Freelance DevOps Engineer

Mifos Gazelle

Support for ARM

Mifos Finals Week 2025 Day 1 – Mifos Gazelle

Mifos Gazelle

Demo/Profile Creator

https://siuuu.hashnode.dev/gazelle-demo-creator-tui-and-configini-driven-deployments-gsoc-2025-with-mifos

Mifos Finals Week 2025 Day 1 – Mifos Gazelle

Mifos Gazelle

OpenCRVS Integration

Mifos Finals Week 2025 Day 1 – Mifos Gazelle

Mifos Gazelle

Runtime GUI for Demo Narration

Mifos Finals Week 2025 Day 1 – Mifos Gazelle

Mifos X

Enhancements to Mifos X Web App (GSOC)

GSoC_2025.md

4:28

Craig Rosario

Mifos X

Modular UI based on ShadCN Components (GSOC)

GSoC’25_mifosx_web_app_react_Craig_Rosario.md

14:43

Abhinav Cilanki

Mifos X

Reactive Loan Risk Assessment Engine (GSOC)

Reactive Loan Risk-Assessment Engine for Mifos X — GSoC 2025 Final Report

23:23

Mifos X

Credit Bureau Integration Module (GSOC)

GSoC’25 Final Report

43:17

Mifos X

Bank Statement Analysis Module 2.0 (MSOC)

MSoC 2025 Report.md

57:51

Mifos X

Workflow Engine Integration Module (GSOC)

GSoC 2025- Integrate Mifos X With Workflow Engine/Process Automation Tool- Work Product

1:05:23

revanth kumar

Contributor

Mobile Apps

Mifos X Field Officer App to KMP (MSOC)

Mifos Summer of Code 2025 – Final Report

Mifos Finals Week Day 2 – Mobile Applications

Mobile Apps

Enhancements to Mifos Mobile (C4GT)

Mifos Finals Week Day 2 – Mobile Applications

Mobile Apps

Mifos X Field Officer App to KMP (MSOC)

Mifos Finals Week Day 2 – Mobile Applications

Mobile Apps

Enhancing Mifos Module Wallet App – UX & transactions (GSOC)

GSoC 2025 Final Report — Contributions across Mifos mobile ecosystem

Mifos Finals Week Day 2 – Mobile Applications

Mobile Apps (C4GT)

Enhancements to Mifos Pay Mobile Wallet (C4GT)

Mifos Finals Week Day 2 – Mobile Applications

Anjali Shah

Mobile Apps (GSOC)

lUI/UX Component Library in Compose (GSOC)

GSoC Mifos _ Saksham.pdf

Mifos Finals Week Day 2 – Mobile Applications

Sk Niyaj Ali

Mobile Developer

Mobile Apps (GSOC)

Kotlin Multiplatform Project Template (GSOC)

Sk Niyaj Ali_GSoC’25 Final Report

Mifos Finals Week Day 2 – Mobile Applications

Mifos X

Abhinav Cilanki – Reactive Loan Assessment Engine

Abhinav Cilanki, under the mentorship of Akshat Sharma and Victor Romero, has delivered a new foundational component that compliments Mifos X loan management capabilities by offering a stand-alone loan risk assessment engine. Abhinav built a reactive, event-driven microservice that ingests loan & document events from Apache Fineract and Mifos X via Kafka, fetches & organizes borrower documents, and orchestrates external risk checks (Bank Statement Analysis and Credit Bureau Pulls) in a resilient, non-blocking way. The Results are stored in a reactive PostgreSQL database (R2DBC), and lightweight HTML/PDF endpoints are provided for quick operator review and audits. The service is extensible (SPI for credit bureaus), observable, and production-minded (timeouts, retries/backoff, safe reprocessing).

This project met all its objectives by designing and delivering the necessary components to ingest and persist events generated by Fineract, download and store documents and attachments, an aggregator to determine readiness and orchestrate credit bureau calls, extensible service provider interfaces (SPIs) to rapidly integrate new providers without rewriting core logic, as well as components for reliability and observability to ensure stability in production environments. The architectural design and implementation choices chosen by Ahbinav ensures increased throughput via its fully reactive pipelines, operational visibility without deep technical knowledge, extensibility to scale seamlessly across markets, and reliability even when external providers fail or respond slowly.

Hossam Hatem – Workflow Engine Integration

Aligned with our goal of extending capabilities that augment MIfos X loan management with stronger origination and onboarding tools, Hossam’s workflow engine integration project under the mentorship of Yash Sancheti and Victor Romero, delivered on that well beyond expectations. Hossam has created a workflow integration engine layer to seamlessly integrate both internal processes as well as interactions with external systems, so non-technical individuals can design and configure complex workflows through simple drag and drop interfaces following BPMN with no coding knowledge required. Hossam delivers on the project’s functional and business goals by democratizing workflow design with an initial focus on core processes like client onboarding and offboarding as well as loan origination and disbursement. Hossam took no shortcuts on the architectural design by ensuring its workflow engine-agnostic, easily integrates with the auto-generated Fineract client, is highly secure, is flexible and extensible, has extensive testing coverage, is fully documented, is rapidly deployable, and is highly scalable and resilient.

The architecture is future proof as a Spring Boot application with a layered architecture. At the heart of the design is the WorkflowEngine layer which acts as an abstraction interface, a generic adapter keeping the Mifos X core clean and adaptable by being engine-agnostic and allowing any workflow engine to be integrated with. Hossam chose to start with Flowable as the initial workflow engine because of it active community, support for BPMN 2.0, and seamless integration with Java and REST APIs. Hossam’s solution is built on the KMP version of the Fineract Client so as back-end APIs change the workflow integration can be rapidly updated with no manual intervention. The solution is highly secure with strong authentication services, has full testing coverage and has a fully containerized deployment package with health checks via Docker Compose. 

We now have a powerful and extensible workflow engine integration that the community is ready to extend by integrating new additional workflows especially those with external systems and processes, integration into our other decisioning tools like the credit bureau module, the loan risk assessment engine, and building in additional retry mechanisms for advanced additional workflows.

Please take the time to watch Hossam’s final showcase to fully understand the breadth of what he has built including the overall architecture of the solution as well as a demo of the supported workflows.

Yu Wati Nyi – Credit Bureau Integration Phase 5

Adding to the much-needed loan origination capabilities alongside Mifos X, under the mentorship of Victor Romero, Yu Waty Nyi embarked on Phase 5 of the Credit Bureau Integration first started by Nikhil Pawar. Our aim is to have a flexible module which automates the connection between Mifos X and any external credit bureau API to send client information to an external credit bureau and receive credit scores or reports in response. She has restructured the code completely from scratch such that it’s now a stand-alone service and module that sits outside of Apache Fineract® securely consuming the Fineract Client APIs. 

The Spring Boot 3 application has been containerized with Docker using OpenAI for documentation and mirrors much of the Apache Fineract® stack. It has a layered architecture with an API for incoming requests, a service layer with the core business logic, the domain layer for data models for the core entities, the data layer for DTOs for API communication, a mapper to convert between data and entities as well as an exception layer for error handling. Given the global reach of our community, she has built with extensibility in mind by following the DTO pattern to decouple the API from internal entities, and to ease the process of adding and configuring new credit bureaus, using MapStruct to map between entity and DTO , the builder pattern using Lombok, and externalized configuration to store API keys. 

Circulo de Credito of Mexico was chosen as the initial reference credit bureau integration to send client information and receive a FICO score in response. 

Looking to the future, Yu has completed the back-end APIs but a front-end UI still needs to be completed, caching is to be implemented for better for performance, AWS secrets manager could be implemented to improve the current AES encryption, additional test cases can be added, and mapping of the FICO score to the loan product to help automate loan approval.

Craig Rosario – Modular UI based on ShadCN Components (GSOC)

Day by day, Mifos X is being used by a variety of fintechs and financial inclusion providers for more and more use cases that go beyond the initial group and center based microfinance operations that Mifos X was initially designed for. Craig Rosario, with the guidance of Aleks Vidakovic, has created a modular UI framework that allows developers to rapidly build new UIs for any fintech flow or use cases using more modular, maintainable modern UI components. This app currently sits in parallel to the Mifos X web app which uses Angular with Material Design which provides an all-in-one UI. THis new UI framework has been built using React and Typescript on the front-end, Tailwind CSS and ShadCN for styling and re-usable components and consumes the OpenAPi Typescript Client auto-generated from the Apache Fineract back-end. Ultimately we would like to see fintechs and other adopters build brand new modular UIs for their distinct flows using these reusable stylable components but for Craig’s project to demonstrate what can be done and provide a highly functional app, Craig has migrated nearly the entirety of the current web app to the new React-based architecture. This framework now provides a consistent design system using stylable ShadCN components, integrates seamlessly with the Apache Fineract back-end through the OpenAPI auto-generated typescript client and has a clean project structure with modular pages, components and stage management. 

Developers can now build user interfaces more rapidly with an improved developer experience through more modular components that are re-usable eliminating the rewrite of code. All in all, Craig created more than 200 screens to migrate the existing UI. There are still some pages that need OpenAPI support to be migrated as well as components of the Institution module. Unit testing of components and Integration tests of the API flows can be added; multi-language support via translations is still to be added as well. However the biggest request of the community is for any fintechs that have specific use cases or flows that aren’t ideal for the current web app to now use this framework to rapidly build your modular UI and give us feedback on the experience.  

AI Enablement

Vickey Kumar – Voice-Driven Banking Assistant via Large Acoustic Models

As part of Code for GovTech, under the mentorship of Akshat Kumar and Parth Kaushal, Vickey Kumar completed his project focused on providing a Voice Driving Banking Assistant to help make Mifos X more inclusive and accessible to underreached populations including those who are illiterate and with language barriers. Now with this app catering to the more than 1.3B adults lacking basic digital literacy skills , users can interact with their accounts in Mifos X using just their voice. 

The project uses various LLM models for TTS (Text to Speech) and STT (Speech to Text) to interpret user commands and enable seamless interactions with the app. The overall tech stack consisted of Hugging Face models for the TTS and STT and FastAPI for a compact and fast back-end. The Gemini APIs were primarily used to authenticate via voice and for NLU (Natural Language Understanding) to handle response generation while Firebase was chosen as the database for easy usage with LLMs to enable keyword matching without SQL queries, and React and Tailwind CSS deployed on the front-end. 

As part of the roadmap for future enhancements, we look to generate a proprietary high quality data set to improve training and accuracy of the LAM and NLP models, integrate an open source framework to provide an even more secure voice authentication system, and to systematically add a greater range of intents and entities to improve the model performance and scope.

Shubham Pal – Accessibility & Language Improvements using AI to increase Inclusion

Shubham Pal, a previous GSOC alumni, returning this time as an intern through Code for GovTech worked with his mentors to deliver a better means for consistent and context-aware translations across both our web and mobile apps which require multilingual interfaces for inclusion and accessibility.

This will now make it easier for developers to translate and maintain the translation files and create a more consistent user experience. 

We have now transitioned from a simple dictionary-style of translations to a context-aware translation model powered by LLMs. The script uses LLM APIs to translate the raw files and generates literal, natural sounding and context-aware translations along with human review to ensure the quality of translations. These LLM-based flows are similar for both the web and mobile apps. For the Mfos Web App UI, the JSON language files are parsed to extract keys and values from the JSON; the text is identified to create a context-aware prompt which then gets processed via the GrokLLM API using the LLama 70B model. The translated text then gets saved in a new JSON file. Caching has also been implemented to avoid redundant calls and increase performance. This has been implemented now for 15 languages into total for the Web App UI. 

For the mobile, strings.xml files are used rather than JSON. Translations in the mobile app were even more inconsistent or incomplete with many sections having the same strings.xml file in different directories so a slightly different approach was taken.  The workflow includes a new strategy for parsing files with different tags. Since multiple files are present in different directories, Shubham had to manually find each string.xml file and compare against the English version, in some directories there less translations than the English file. In these cases where there were less, they were converted and stored in a new translation file. The approach was then very similar: find string.xml files in different directories in the repo, parse the strings.xml files, extract string and string-array entries to be translated, exclude ones to not be translated and then use context-aware prompt, and the same LLM APIs used during the web app translation.

Next on the roadmap is- functionality to add new translations for languages that get added. As of languages that were included as of August 15, everything has been translated. There are now also plans for a User Interface for developers and release managers for these translations. 

Mobile Apps

Saksham Gupta – Extend and Evolve UI Library of Common Components across all Mobile Apps

For his Google Summer of Code internship, Saksham Gupta, embarked on a highly critical cross-cutting initiative to Extend and Evolve our UI Library of common components across all Mobile Apps under the mentorship of Prashant Manda, Rajan Maurya, and Anjali Shah. Saksham far exceeded his goal to create a UI/UX library enabling a user-friendly experience of common shared components and design guidelines to establish consistency and usability within our mobile applications. He conducted a thorough and comprehensive project from start to finish, not only focusing on design but originated with research of other apps, interviews with real-life users, and mapping and analysis of the flows. Likewise, apart from delivering hundreds of high-fidelity screens with dozens of re-usable components, he ensured that implementation of the designs by developers was seamless and could easily be re-used across the Compose components. Throughout his project, Saksham adhered to strict principles and approaches to ensure quality and consistency were never compromised with well-defined sprints following tight agile ceremonies. Saksham’s discipline was on display as Prashant pushed him to build the library before the screens: tokens, variables, and styles first; followed by components next and lastly, the flows so consistency became a default. These designs were also coupled with extensive guidelines and standards for all these components with clear and intentional rationale for the color choice and design decisions behind each one. 

Across seven sprints, Saksham delivered on the UI/UX library for both Mifos Mobile as well as the Mifos X Field Officer App. All in all, Saksham designed 200+ high fidelity screens with 30+ reusable components for Mifos Mobile and for the Field Operations App 160+ screens with 40+ reusable components. 

While the mobile development team has already been implementing the designs, Saksham still has plans for future improvements including major redesign of the landing dashboards for Mifos Mobile. For the Mifos X Field Operations re-designing and streamlining all the flows for interactions with group accounts and improving the design of reporting features for performance, compliance and customer insights. 

All of the designs and the process in arriving at the designs for all the flows across both of these mobile apps has been documented extensively by Saksham in his final report and final showcase. You can  interact with the final Figma designs for Mifos Mobile and the Mifos X Field Officer App.

Jilakara Rivanth Kumar – Mifos X Field Officer App to KMP (MSOC)

As part of Mifos Summer of Code, the original focus for Rivanth was to Migrate Mifos X Field Officer Application to Kotlin Multiplatform but he ended up working on many of our mobile app project. Rivanth was a vital part of the community efforts to resdesign the user experience for Mifos Mobile and the Mifos X Field Officer App and the migration of both projects to Kotlin Multiplatform. Key milestones of his work included migration of new screens for the field officer app based on Figma designs, migration of modules and implementation of new UI screens for Mifos Mobile, and bug fixes and improved user experience for the MifosPay mobile wallet. All in all, Rivanth authored more than 100+ pull requests and reveiwed 150+ pull requests.

Through the more than 50 pull requests across the Mifos X Field Officer app, Rivanth migrated core modules to KMP such as UI, Network and Data Store as well as migration of more than ten feature modules to Compose Multiple platform and refactoring of the screens to match the latest Figma designs resulting in a UI that is cleaner and responsive across all devices.

For Mifos Mobile, Rivanth authored 39 pull requests migrating core and feature modules to KMP and CMP, migration of skins to the New UI based on Figma for flows such as Charges, Tranasfers, Beneficiaries and the Customer Profile section, in addition to bug fixes and architectural enhancements.

Rivanth also contribute ten pull requests to MifosPay supporting migration of the APIs to self-service flows and improving the overall user experience.

Sk Nyaji Ali – Kotlin Multiplatform Project Template (GSOC)

For his Google Summer of Code internship, Sk Niyaj Ali, worked on Enhancing the Kotlin Multiplatform App Template Framework under the stewardship of Rajan Maurya. The Kotlin Multiplatform (KMP) Multi-Module Project Generator serves as a foundational tool for creating cross-platform applications within the Mifos Initiative ecosystem. This project aimed to enhance the existing template framework by implementing comprehensive improvements that streamline development workflows, improve code quality, and provide robust infrastructure components for building production-ready applications across Android, iOS, Desktop, and Web platforms.

It extended our one-time use template to be a 

  • Pre-configured CI/CD tools, multi-module architecture, intelligent project synchronization such that when you do enhancement to a dependency, every downstream project will get those updates via Github Actions.
  • Advanced security management to automatically generate the keystore for different app stores. For android, need 20+ keys – generating these
  • Source Set Hiearchy and Code Sharing enables code resuability across the different platforms through intelligent code sharing via hierarchical dependencies.
  • KPT Design System Architecture allowing to use own design system or material themes but can easily integrate customer themes. Contains interfaces and shared composablle cross-platform component library, abstraction layer for platform-spefiic functionality
  • Type-Safe Navigation Framework – maintain consistency oft user experience contains platform specific navigation of each platform.

Pronay Sarker – Mifos X Field Officer App to KMP (MSOC)

Also worked on migration of Mifos X Field Officer App to KMP so available across multiple platforms.

Migrate core modules, implemented new UI mockups, type-safe navigation, MifpsPay – bugs and improved UX 

Phase 1 -KMP dependencies, core modules to KMP, 

Replacing hitl with koin for depdnency injections.  SQL lite to multiplatform compatible datgabse

Feature modules migration – sahred business logic while keeping UI in jetpack compose. 

PHase 2 – UI mockups from Figma

Typsafe navigation  0 make screen transitions safer, reduced runtime navigation errors

Screen layout

Nagarjuna Banda

  • Mifos Mobile Enhancements –
    • Schedule payments ,dashboard redesign 
    • Srite once run everywhere. 
    • Share biz logic across platforms, native ui for each target. 
  • Migrated core modules to KMP – core and feature modules 
  • Re-usable modular components based off design from Saksham. 

New features as well. 

6 sprints – complet

App live for play store and Ios

Bug fixes and contributions too. 

Biplab Dutta

MIfos X Field Officer App Migration 

Client module – list details, identifiers, pinpoint surveys, chage, singature, client form, client form camera, client pinpoint module

Client Charges module Client Identifiers Module

Path Tracking Module – not done 

Checker Inbox Task Module 

MIfosPay – modular multimethod payments and auto-pay system

Only internal payments – enable it to support payments for external networks for any users – UPI, 

Extensiblek maintainable, user friend, 

UPI as reference implementation 

Form factors – scan & pay, bank transfer, auto pay for recurring transfers 

Implemented flow for scanning of QR codes for UPI Payment Flow –  Fineract accounts or UPI code 

Front-end ui for bank transfer via UPI 

UPI payment flow – back-end implementation created but using mockups for visuallizing UI copmnets 

UPI Pay Anyone Flow – UPI ID, mobile number, – UI created but still need back-end implementation 

Saksham Gupta

All in all – Mifos Mobile – 200+ high fidelity screens designed with 30+ reusable components

Mifos X Field Officer App – 160+ screens with 40+ reusable components 

User Research informed the UI design. 

Phase 1 redesign wasn’t too adaptable to dark theme because of high contrast colors – 

Redesign 2.0 – Material Theme Builder with their color schemes – 

Broke across 7 sprints – language onboarding and login, the registration, then components with fliters, head cards, account coards – Building block components of the apps 

Homepage, authentication, savings account flow 

REpayment schedule now more intuitive. 

After midterm – DOcument row, row set, top card, beneficiary flows, beneficiary details, adding new beneficiaries – warning before scanning QR cde

Shares, etc. 

Sprint 6 – profile /settings flow 

Sprint 7 – transfer flow 

Sprint 3 – less components to design as re-useing the previous components. 

Mifos X Field Officer App – bottom up approach to make dynamic dashboard configured according to functionality need byed user.  

Cleint, Apply new application flow – common application flow for new loan account, new savings account, new share account, new FD account, new RD account 

Created step-wise creation process for these flows 

Overall di 100+ PRs 

Learned about clean architecture, modulatization, migration strategies