GnuCash-Pocket / gnucash-android

GnuCash Pocket – a mobile companion app for Gnucash desktop application (https://github.com/Gnucash/gnucash). Developed independently of GnuCash.
Apache License 2.0
71 stars 15 forks source link

RFC: product vision & long-term plan #141

Open hades opened 1 month ago

hades commented 1 month ago

I would like to solicit opinions of Gnucash users and the maintainers of this repository, on what the Android (+maybe iOS in the future) app should be, and any thoughts on a roadmap.

I've read #8, and I've seen a number of great ideas for technical improvements, however not so many thoughts on the product itself.

The main question to me is: what is this app for? I can see three options:

a. The app provides a way to enter transactions "on the go", then sync them with Gnucash desktop. b. The app is a "mirror" for the Gnucash desktop, providing access to the books you already have, and offering a subset of features of Gnucash desktop. c. This is a fully functional accounting app, with an option to sync with desktop accounting software, such as Gnucash.

Personally, I'm using Gnucash a lot, and I'm very interested in what Gnucash Android can become. I would like to help with tech maintenance work, and also to build new features; however, I think at this point agreeing on a road map would be necessary before embarking on big projects.

Looking forward to your comments!

Victor239 commented 1 month ago

I think a MVP (i.e. option a) could be achieved just by adding this feature https://github.com/GnuCash-Pocket/gnucash-android/issues/132.

However I'd like to see GnuCash Pocket continually move towards feature parity with the desktop version. Being written in a modern language with support for fresher UI like Material Design I can see this app replacing the desktop app for many people who prefer it's UX.

Kaligula0 commented 1 month ago

If the app becomes a it will be enough for me (I prefer to use computer instead of phone's little screen). If this is achieved we can still aim higher, b or c, and fallback to a if anything goes wrong.

hades commented 3 weeks ago

So, do I understand you correctly, that right now all your use-cases are covered by option "a", but you would not mind exploring the possibility of having an app that implements an option "b" or "c", even though right now you don't really have any use for it?

Kaligula0 commented 3 weeks ago

Partially yes. I wouldn't say I "don't really have any use of it". If the app could sync and save to the same file GnuCash uses it would be much easier - all TXs entered on the go would be immediately saved, which is more convenient than exporting from mobile and importing to PC :)

hades commented 2 weeks ago

Gotcha. The way I see it, this is an improved version of option "a" still, i.e. this would still be an app to enter transactions, it's just that the sync experience is improved.

Which, incidentally, is why I started this research in the first place: I want to have an "append only" companion app that can automatically append transactions to Gnucash without manual labour :)

hades commented 2 weeks ago

There is also a discussion thread on KMyMoney forums, where a smartphone companion app is being discussed: https://discuss.kde.org/t/remote-access-or-mobile-phone-app-for-kmymoney/6436

Kaligula0 commented 1 week ago

@hades You can use Python to insert transactions directly (Simon said on GnuCash IRC https://code.gnucash.org/logs/2024/06/20.html). Maybe this is a point to start research, too? When I have time I'll ask what Simon uses in particular.

hades commented 1 week ago

@Kaligula0 Thanks! I'm currently building a prototype direct sync solution where a modified Gnucash Pocket talks to a Python app that reads/writes directly from/to a Gnucash database. Once I have it working decently I'll update this issue for anyone who's interested.

djbrown commented 6 days ago

hello @hades, as @Kaligula0 already stated, the main goal is to provide a mobile companion for entering transactions on the goal (a). see also https://github.com/codinguser/gnucash-android/issues/913#issuecomment-1263624322

Clarify the Scope

According to Google Play reviews, most people use the app to enter transactions on the go and then import them to the desktop program. Therefore the product has to be completely compatible and integratable with GnuCash. One could also use it for simple standalone accounting, but there are better alternatives for that. Also it is not an Android port or mobile version of GnuCash. There are noway near as many features in the app. That might change some day, but strongly depends on what the users want.

and also https://github.com/GnuCash-Pocket/gnucash-android/issues/8#issuecomment-1998574660