/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 Build Lint Unit Test Integration Test

License: GPL v3 PRs welcome! GitHub Repo stars

1 2 3 4
5 6 7 8

Ivy Wallet is a free money manager android app written using 100% Jetpack Compose and Kotlin. It's designed to help you track your personal finance with ease.

Imagine Ivy Wallet as a manual expense tracker that will replace the good old spreadsheet for managing your personal finance.

Track your expenses, fast and on-the-go! ⚡ Discover powerful insights about your spending.

Do you know? Ask yourself.

  1. How much money do I have right now in all accounts combined?

  2. How much did I spend this month and where?

  3. How much money can I spend and still reach my financial goals?

A money manager app can help you answer these questions.

Ivy Wallet's biggest advantage is its UI/UX, simplicity, and customization which was recognized in the "Top/Best Android App in 2021/2022 charts" 10+ times by the YouTube tech community.

Get it on Google Play

To support our free, open-source project please ⭐ star our repo - that means a lot for us! Thank you! GitHub Repo stars 🙏

Architecture

We strive to keep our architecture "perfect" by putting software-design and code quality first.

We read a lot of books, CS papers, blogs and follow latest research in the industry.

Our goal is to make this repo the go-to project to learn about Android Development latest best practices and software architecture.

High-level view:

We've documented every major architecture decision as ADR (Architecture Decision Record) in docs/architecture. The best thing about ADRs is that you can see not only what went well but also what didn't!

If you're starting out with the Ivy Wallet project first have a look at our :core module.

We're also linking great learning materials (books, videos, articles, papers) in docs/resources 📚.

Have ideas/proposals how we can make our project better? Please, get in touch! 🚀

PRs welcome!

Tech Stack

Core

Local Persistence

  • DataStore (key-value storage, Shared Preferences replacement)
  • Room DB (SQLite ORM)

Networking

Other

CI/CD

Project Requirements

How to build?

  1. Clone the repository
  2. Open with Android Studio
  3. Everything should sync and build automatically

Ideology 🌍

We believe that people (not corporations) can create innovative, open-source, and free software that can make the world a better place.

We want Ivy to be:

  • A place where you can excel and have fun while contributing to something meaningful.
  • A community where you can express yourself freely and build the future that you want to live in.
  • An open-source project with zero-tolerance to "bad" code and putting code quality above everything.

We believe in:

  • Freedom.
  • Creativity & Innovation.
  • Challenging the status quo.
  • Technical excellence and eliminating complexity at any cost.

We're always open to new ideas and proposals! Have an idea? 💡 Join our Telegram community or submit us a PR - we appreacite both!

Community

Be the change! Join our Telegram community, star our GitHub repo GitHub Repo stars, and tell us how we can create a better environment for developers & creators to work together.

Contributors (see graph)

Why to contribute?

  • It's a win-win!
  • You'll appear in our contributors wall.
  • You can include it in your CV/LinkedIn and show recruiters that you contribute to open-source projects (counts as +1 released app in the Google PlayStore).
  • You'll make Ivy Wallet better.
  • You can develop the features that you miss in the app yourself, the way you want them.
  • You'll play around and learn cutting-edge technologies.
  • It's the easiest way to learn Jetpack Compose in a production environment.
  • You can see Android Development Best Practices in 2022 (and also help us improve our code).

How to contribute?

Follow our compact Contributors Guide to begin.

TL;DR:

  • Submit pull requests for bug fixes, code improvements and features to the develop branch.
  • 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 ⭐⭐⭐⭐⭐.
  • Star our GitHub repo GitHub Repo stars.
  • Fix typos in READMEs (.md files), Docs and broken links - we have a lot of them as you'll see and fixing them helps a lot, too!

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.