split-pro icon indicating copy to clipboard operation
split-pro copied to clipboard

Option to simplify Debts

Open KMKoushik opened this issue 1 year ago • 5 comments

KMKoushik avatar May 11 '24 23:05 KMKoushik

I would be happy to work on this and started looking at how can this be implemented.

My main inspiration is of course Splitwise and I would implement the maximum flow algorithm for optimization, as described here. However, currently the app does not really seem to have a very compatible UI for that.

In particular, the UI currently does not really isolate groups on the main screen as Splitwise does and it is only that screen that shows balances. The debt simplification algorithm could of course only be applied to groups, as we cannot affect every single user on Split Pro with our decision to simplify debts (I know a lot of people who dislike/distrust this feature).

What I would propose is to go along with the more group oriented design, as this is the core functionality of such apps and the primary use case as far as my experience goes. However, I would like to have a green light from the maintainer @KMKoushik, as I do not know if you want to go in this direction or have a different vision for this.

To summarize the changes I would like to implement:

  • display our givers and receivers in the group info, instead of just the total amount owed
  • add a field to group details called simplifyDebts
  • add a toggle in group settings to switch simplify debts (any member can do it, not just the owner)
  • introduce a per-peson balance query, which either calculates individual in group transfers or performs simplified ones

krokosik avatar Feb 06 '25 11:02 krokosik

Is there any timeline to accept the pull request?

tamtam22 avatar May 21 '25 18:05 tamtam22

The repo isnot maintained currently, you can use my fork to get this feature and I would appreciate the feedback :)

krokosik avatar May 21 '25 18:05 krokosik

Is there a docker image i could pull? @krokosik

Soulplayer avatar May 21 '25 19:05 Soulplayer

Sorry, I was hoping to upstream my changes, so I only built it locally

krokosik avatar May 21 '25 19:05 krokosik