Village Banking is a phenomenon that has gained popularity in my country and most African countries, there is a version of it in the U.S as well with a different name. Most small village banking groups keep track of their finances in whatsapp messages or by one person. What is village banking you ask?
Village banking is a microcredit methodology whereby financial services are administered locally rather than centralized in a formal bank. Village banking has its roots in ancient cultures and was most recently adopted for use by micro-finance institutions (MFIs) as a way to control costs. Definition from wikipedia
The solution to people using excel sheets or tracking the village banking money through messages is a web application that can be used on a mobile phone or desktop.
This application started its life as a react native application but was then switched to react to reach more people than a mobile app can.
It is a react app with Material UI for the look and feel. On the mongo side it is a MongoDB Realm application using an atlas database, realm functions and realm triggers.
I had a couple of challenges:
- I haven't developed in react or react native in over a year so I had to dust of some of the rust
- I had a couple of issues understanding how roles affect how you can access data in a mongo db collection from a realm application.
- Understanding realm sync destructive changes (the documentation was pretty helpful here)
- Time is an ever present challenge, switching halfway through to react certainly took some time and doing it during the Christmas break was not ideal.
- I have a working application integrated with MongoDB Realm
- I have deployed a version of the application
- MongoDB Realm: Almost everything under realm, Authentication, functions, triggers, Schema and values
- React native: It was basically like learning react native again after over 2 years of not developing it.
- Integrating libraries like Twilio with MongoDB Realm
The following is the roadmap for village banking
- Adding loan requests for users of village banking groups
- Adding profile editing
- Complete the sms and email notifications
- Develop a mobile application
- Writing up bite sized tutorials on MongoDB Realm.
My submission is in the Action Star category and uses realm functions and triggers.
To view the deployed demo please check this link
This is a web application for village banking Definition from wikipedia.
Please find link to project here
- Create/Join Village Banking groups
- Deposit Money
- View deposits for the whole group
- Sms notifications using Twilio
What did you learn while building this project? What challenges did you face and how did you overcome them?
- Adding the ability for group users to request for loans on the app
- Profile editing
- Email notifications as an alternative for sms
- Mobile application
The realm backend code can also be found in the repository in the folder called backend.