mirror of
https://github.com/openMF/mobile-wallet.git
synced 2026-02-06 13:56:52 +00:00
docs: add c4gt 2025 project documentation
This commit is contained in:
parent
4d200dc358
commit
084c549056
123
docs/projects/C4GT_Project_Documentation.md
Normal file
123
docs/projects/C4GT_Project_Documentation.md
Normal file
@ -0,0 +1,123 @@
|
||||
# C4GT 2025 – Project Documentation
|
||||
|
||||
## Overview
|
||||
This document summarizes my contributions during the C4GT 2025 program under the Mifos Initiative.
|
||||
I worked on two main projects:
|
||||
- **Android Client (openmf/android-client)** – Migrating feature modules to **Compose Multiplatform (CMP)**.
|
||||
- **Mobile Wallet / Mifos Pay (openmf/mobile-wallet)** – Implementing **UPI payment flows** and setting up future modules (e.g., AutoPay, Bank Transfers, Customer/ Merchant Payments).
|
||||
|
||||
---
|
||||
|
||||
## 1. Android Client (openmf/android-client)
|
||||
|
||||
### Scope
|
||||
- Migrated feature modules to **Compose Multiplatform**:
|
||||
- `feature/checker-inbox-task`
|
||||
- `feature/path-tracking`
|
||||
- `feature/client` (largest module, 13 sub-features)
|
||||
- Bug fixing and improvements in sub-features (`client-identifiers`, `client-charges`, `client-pinpoint`, etc.).
|
||||
- Reviewed multiple PRs from the team.
|
||||
|
||||
### Key Achievements
|
||||
- **Full migration** of `feature/client` to CMP (merged).
|
||||
- **Bug fixes** across sub-features: dialogs, UI states, silent failures, signature reset, charge dialog UX.
|
||||
- **Abstractions & design ideas** for Android SDK dependencies (LocationManager, File, Uri, Context).
|
||||
- **PR reviews** across the repo, helping maintain code quality.
|
||||
|
||||
### Selected Pull Requests
|
||||
- [#2389](https://github.com/openMF/android-client/pull/2389) – Migrate checker-inbox-task to CMP
|
||||
- [#2400](https://github.com/openMF/android-client/pull/2400) – Migrate path-tracking to CMP
|
||||
- [#2401](https://github.com/openMF/android-client/pull/2401) – Migrate client module to CMP
|
||||
- [#2415](https://github.com/openMF/android-client/pull/2415) – Fix identifiers empty state & dialog layout
|
||||
- [#2430](https://github.com/openMF/android-client/pull/2430) – Merge ViewModels, add charge validation
|
||||
- [#2433](https://github.com/openMF/android-client/pull/2433) – Fix Client Pinpoint & implement Pinpoint Map dialog
|
||||
|
||||
_(More PRs linked in weekly updates)_
|
||||
|
||||
### Learnings
|
||||
- Large-scale CMP migrations (navigation, DI, tightly-coupled Android SDK APIs).
|
||||
- Debugging CMP-related UI bugs and state issues.
|
||||
- Collaboration via reviews, navigation design, and Jira ticketing.
|
||||
|
||||
---
|
||||
|
||||
## 2. Mobile Wallet / Mifos Pay (openmf/mobile-wallet)
|
||||
|
||||
### Scope
|
||||
- **UPI Payment Flows**:
|
||||
- Scan & Pay (via QR codes)
|
||||
- Pay to UPI ID / Pay Anyone
|
||||
- Bank Transfers (self & others)
|
||||
- AutoPay module setup
|
||||
- **Standing Instructions**:
|
||||
- Fixed loading issues and added fallbacks for missing API data.
|
||||
- **Upgrades & Setup**:
|
||||
- Upgraded compileSdk, AGP, Gradle, and dependencies.
|
||||
- Drafted implementation plan for **Merchant Payments KMP Module**.
|
||||
|
||||
### Key Achievements
|
||||
- Built **frontend flows** for UPI: navigation, screen layouts, and UI/UX fixes.
|
||||
- Implemented **QR-based UPI app invocation** (draft PR).
|
||||
- Drafted backend design assumptions with **PHEE + Fineract + PSP bank UPI APIs**.
|
||||
- Fixed **Standing Instruction bugs** (merged).
|
||||
- Created Jira tickets for merchant payments and loan sandbox module.
|
||||
|
||||
### Selected Pull Requests
|
||||
- [#1889](https://github.com/openMF/mobile-wallet/pull/1889) – Update compileSdk to 35, AGP, Gradle, dependencies
|
||||
- [#1890](https://github.com/openMF/mobile-wallet/pull/1890) – Fix SI loading issue
|
||||
- [#1891](https://github.com/openMF/mobile-wallet/pull/1891) – Add default values for missing fields
|
||||
- [#1899](https://github.com/openMF/mobile-wallet/pull/1899) – Fix DialogState serialization error
|
||||
- [#1903](https://github.com/openMF/mobile-wallet/pull/1903) – Add basic UPI payment support (draft)
|
||||
- [#1906](https://github.com/openMF/mobile-wallet/pull/1906) – Implement Pay Anyone (draft)
|
||||
- [#1907](https://github.com/openMF/mobile-wallet/pull/1907) – Add Bank Transfers (draft)
|
||||
- [#1908](https://github.com/openMF/mobile-wallet/pull/1908) – Setup AutoPay feature (draft)
|
||||
- [#1909](https://github.com/openMF/mobile-wallet/pull/1909) - implement autopay dashboard (draft)
|
||||
- [#1910](https://github.com/openMF/mobile-wallet/pull/1910) - biller and bills setup (draft)
|
||||
- [#1912](https://github.com/openMF/mobile-wallet/pull/1912) - see all; sorting; empty state; per-tab scroll; top bar
|
||||
- [#1913](https://github.com/openMF/mobile-wallet/pull/1913) - resolve overlapping screens during transitions
|
||||
|
||||
### Learnings
|
||||
- UPI payment flow design & integration patterns.
|
||||
- Mapping frontend flows to backend orchestration.
|
||||
- Drafting extensible KMP modules (Add Payments, Merchant Payments, Loan Sandbox).
|
||||
- Handling cross-module UI/UX refinements.
|
||||
|
||||
---
|
||||
|
||||
## 3. Weekly Progress
|
||||
Detailed week-by-week updates are available [here](https://github.com/openMF/mobile-wallet/issues/1852#issuecomment-2950151917).
|
||||
(Summarized in PRs above; includes Week 1 → Week 14 breakdown.)
|
||||
|
||||
---
|
||||
|
||||
## 4. Current Status
|
||||
- **Android Client**: CMP migration PRs merged, bug fixes completed.
|
||||
- **Mobile Wallet**: UPI payment flow and AutoPay PRs in draft/review; backend clarifications pending.
|
||||
- **Documentation**: Jira tickets created and parented under master tickets.
|
||||
|
||||
---
|
||||
|
||||
## 5. Next Steps
|
||||
For future contributors:
|
||||
- Complete review & merge of draft PRs in `mobile-wallet`.
|
||||
- Connect UPI frontend flows with backend APIs once integration clarifications are resolved.
|
||||
- Extend Payments and AutoPay modules as planned.
|
||||
|
||||
---
|
||||
|
||||
## 6. License
|
||||
This documentation is licensed under the
|
||||
[Creative Commons Attribution 4.0 International License (CC BY 4.0)](./LICENSE.md).
|
||||
|
||||
You are free to share and adapt the material, provided you give appropriate credit.
|
||||
|
||||
## 7. References
|
||||
- Jira tickets: [MW-211](https://mifosforge.jira.com/browse/MW-211)
|
||||
- Midterm presentation: [Biplab_Dutta_C4GT_2025_Midpoint_Slides.pdf](https://github.com/biplab1/c4gt-2025-mifos-docs/blob/main/Biplab_Dutta_C4GT_2025_Midpoint_Slides.pdf)
|
||||
- [Mifos Initiative](https://mifos.org/)
|
||||
- [C4GT Program](https://codeforgovtech.in/)
|
||||
- [Mobile Wallet Repository](https://github.com/openMF/mobile-wallet)
|
||||
- [Android Client Repository](https://github.com/openMF/android-client)
|
||||
|
||||
---
|
||||
|
||||
Loading…
Reference in New Issue
Block a user