Dev log: Finance and expense management application

After thinking hard and long about what kind of side project to do next and couldn’t think of a “good” and “unique” app idea, I decided to make my own expense management app. The goal is just to add to my portfolio of applications and learn new frameworks and tools as I develop it.

I have been using Expense Manager on Android for years, however the problem with using other people’s app is that there is a limit to how much I can customize it to suit my use the best. The way I use it, I only log my expenses every day and export it as an Excel file to review once a month.

It does not have an option to show the budgets I set every day/month right on its home page so that I can stop myself from overspending or being able to spend without feeling guilty whenever I log a new entry. In order to view my budgets, I have to tap some links. I would prefer it to remind me of how much I have spent and how much I can spend upfront when I open the app.

So I have been developing this application. The purpose is to learn all the following technologies in one go

  • Golang with Gin framework for backend, a RESTful Web API service.
  • MongoDB for data storage.
  • ReactNative for frontend.
  • Possibly scalable system using containers and kubernetes.

The application will have the following features

  • Offline first design with auto sync with server. AKA Google Keep. Conflicts will be resolved automatically.
  • Scalable storage using MongoDB.
  • Charts and summaries, budgets, etc. Simple and targeted to financial minimalists.
  • Cross platform, support Web, Android and possibly desktop clients.

Development progress is slow because I’m learning all these technologies as I work on it.

At the moment, the UI looks quite bad, I follow the philosophy “Functionalities first, polish later”. Some screenshots are below.