/ivy-wallet

Ivy Wallet is an Open Source money manager app for android that you can either build or download from Google Play.

Primary LanguageKotlinGNU General Public License v3.0GPL-3.0

Latest Release Lint Internal Release

License: GPL v3 PRs welcome!

Personal finance and spending tracker app which helps you manage your money.

ivy-wallet-screenshot-1 ivy-wallet-screenshot-2 ivy-wallet-screenshot-3 ivy-wallet-screenshot-4 ivy-wallet-screenshot-5 ivy-wallet-screenshot-6 ivy-wallet-screenshot-7 ivy-wallet-screenshot-8

Ivy Wallet is a free budget manager and spending tracker app that’ll help you manage your personal finances with ease.

Imagine Ivy Wallet as a digital financial notebook (manual expense tracker) in which you’ll track your income, expenses, and budget.

The advantage that our money manager gives you is that you can track expenses on the go with an intuitive and simple user interface (UI).

Once your transactions make their way into Ivy Wallet, the spending tracker app will give you insight into your monthly spending and help you plan your budgets.

When you enter more income and expenses in the money manager app you'll have an answer to three essential questions:

  1. Exactly how much money do I have right now in all accounts combined? (money manager)

  2. How much did I spend this month and where? (expense tracker)

  3. How much money can I spend and still reach my financial goals? (budget manager)

$Track. $Budget. $Save

Design

..Migration from Adobe XD to public Figma project IN PROGRESS!

To understand more about Ivy Wallet and its data model please visit Ivy Wallet Wiki.

Technologies

Core

  • Kotlin
  • Jetpack Compose (UI & navigation)
  • MVVM architecture with LiveData
  • Hilt (DI)
  • Kotlin Coroutines

Networking

  • Retrofit (REST API)
  • OkHttp 3 (REST client)
  • Gson (JSON serialization)

Local Persistence

  • Shared Prefences
  • Room DB (SQLite ORM)

Other

  • EventBus (cross component communication)
  • Timber (Logging)
  • Firebase Crashlytics (crashes, logging)

CI/CD

  • Gradle KTS
  • Fastlane (upload to Google PlayStore)
  • Github Actions (CI/CD server)

Project Requirements

How to build?

  1. Clone the repository
  2. Open with Android Studio
  3. Everything should sync and build automatically
  • If any build problems occurr, please open a new issue including the logs.

Contributors (see graph)

Why to contribute?

  • It's a win-win!
  • You'll appear as an Ivy Wallet contributor in our public repo
  • You can include it in your CV/LinkedIn and show recruiters that you contribute to our app (counts as +1 released app in the Google PlayStore)
  • You'll make Ivy Wallet better
  • You can develop the features that you want yourself, the way you want them
  • You'll play around and learn cutting-edge technologies
  • When you submit us a meaningful PR and we approve it => you'll receive a free Ivy Wallet Premium Lifetime code
  • It's the easiest way to learn Jetpack Compose in a production environment
  • You can see Android Development Best Practices in 2021 (and also help us improve our code)
  • When we merge your first PR I (Iliyan Germanov) will endorse you on LinkedIn for Android Development and Kotlin
  • Personal recommendation on your LinkedIn profile after 10 successfully merged PRs

How to contribute?

Follow our compact Contributors Guide to begin.

TL;DR:

  • Submit pull requests for bug fixes / code improvements
  • Implement and submit PRs for opened issues
  • Report (or fix) bugs/glitches
  • Create new issues to give us ideas and feedback
  • Download Ivy Wallet and leave us a review

I hope a lot more profile pictures are going to show up here, soon!

Contributors Wall:



Note: It may take up to 24h for the contrib.rocks plugin to update because it's refreshed once a day.