debt_simplification 1.0.2  debt_simplification: ^1.0.2 copied to clipboard
debt_simplification: ^1.0.2 copied to clipboard
A Dart function for simplifying group debt settlements, similar to 'Quick Split'.
debt_simplification #
A Dart function that simplifies debt settlements among a group, similar to 'Quick Split' app. Takes a list of debts and returns a simplified list.
Features Supported #
See the example app for detailed implementation information.
| Features | Android | iOS | macOS | Web | Windows | 
|---|---|---|---|---|---|
| simplify debts | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | 
Platform Support #
| Android | iOS | macOS | Web | Linux | Windows | 
|---|---|---|---|---|---|
| ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | 
Usage #
Import the package with:
import 'package:debt_simplification/debt_simplification.dart';
Then, use the following code to simplify the debts:
List<Map<String, Map<String, int>>> initialDebts = [
    {
        "Alice": {
        "Bob": 10,
        "Charlie": 5,
        } // Bob owes Alice 10, Charlie owes Alice 5
    },
    {
        "Bob": {
        "Alice": 2,
        "Charlie": 3,
        } // Alice owes Bob 2, Charlie owes Bob 3
    },
    {
        "Charlie": {
        "Alice": 7,
        } // Alice owes Charlie 7
    }
];
List simplifiedDebts = DebtSimplification.simplify(initialDebts);