Budgi

Manage Your Budgets & Keep Track Of Expenses


[github][demo]

[tech-used]:

React Native,

Expo,

JavaScript,

React

Motivation

I really just wanted to make a mobile app and found out this idea which was good & useful for me because I always keep forgetting how on earth I spent 75% of my money this week. It’s simple though, the statictics part needs more improvements, there are lot of features I want to make in the future.

  • More in-depth statistics of each date.
  • Export & Import functionality.
  • Budget limit.
  • Notifications.
  • Weekly report.

But I’m pround of what I was able to make in one week.

Lessons learned.

  • Having a pre-design would help, it does, because I ended up re-designing a lot of stuff at least 3 times. Which is a bad habit I’m used to.
  • Once I encouter a problem, I should pause and re-check everything instead of solving the problem I think exists. It could be a missing letter and I’ll be thinking there is something wrong with the tech or the logic and waste hours debugging and fixing the void.
  • State management in reactjs is madness.
  • Always have a USB to debug android apps

Libraries I didn’t have fun working with

  • Expo Sqlite: idk if it was me, but it was quite annoying to use tbh once the app is refreshed everything gets messy and it’s a headache to make relations between tables I think it was an overkill for a basic app like this.
  • React Native Chart Kit: Makes the app crash for android

Libraries I liked

  • Zustand: this library is great, I’d say it, it’s great, it’s hard to update & delete because of immutability but the library is awesome.
  • Expo Ecosystem: Expo eco-system is great ngl, things just work out of the box and perfectly.
  • Reanimated Carousel: great library altough I have one problem is the speed of the animation slows down the state update, cuz it’s updated after the animation is complete.

Notes

  • The app size is quite big tbh 30mb download then the full size is over 60mb, an app like this should at most have 20mb ideally anything less than that, because there are lot of other similar apps with much smaller size.
  • App takes some seconds to load, even after the loading splash screen, the app still freezes till the UI loads and I have no idea why that happens.
  • So apperantly the app size is 30MB if it’s apk and not published to Play Store, and publishing requires a one time fee of 25$ so play store soon tm
  • I have no idea how to implement export/import feature because it’s expo document picker doesn’t support directories and react native document picker is broken idk
  • So I’ll have to make something on my own, typical react native moment
  • I may make something like shadcn for react native because I keep redesigning over and over and it just takes some time to change and see the UI update
  • Aswell as somehow make a tool show your app under different view ports on different phones (that’s another idea cool lol I hope no one is reading this and steals it…)

Screenshots