Skip to content

gitNavV/SplitWiseSystemDesign

Repository files navigation

SplitWiseSystemDesign

An extensibly/modularly/cleanly coded system design for SplitWise

Functionalities:

  1. User can split spend with another user
  • Based on percentage
  • Absolute values
  • Equally
  1. User can split spend with a group
  2. User can exclude few people from the group while adding expense
  3. User can simplify debts - A owes money to B, B owes money to C. If B chooses to simplify debts, then A will pay to C directly

Future plan: User should be able to export their monthly summary of expenses and dues

The code is extensible, modular and clean. Choice of data structure was important for extensibility of the code. Took some time to think through it. Started working from the first requirement and modelled other requirements on top of it.

About

An extensibly/modularly/cleanly coded system design for SplitWise

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages