-
- Notifications
You must be signed in to change notification settings - Fork 106
Description
The Context
There are numerous issues raised (#271 #207 #46 ...) with the current state of Splitwise import and I would like to group them all together, as well as gather feedback for how I would like to rework the current flow.
Currently, we rely on an external hosted solution, to generate a JSON with SOME data fetched from Splitwise API. Looking at the code, it is very simple. We do not import expenses and with the planned #234, such imported accounts will break.
The background for not importing expenses was the fact, that we do not want to overload the Node server with processing of JSONs, which could slow down the app (this concern was probably related more to the public instance) #29
The Plan
- Add
pg-boss, which will allow us to offload execution to another process. We also want this for Feature Request: Allow currency exchange transactions #79 and Feature Request: Recurring expense #160 - Change the import splitwise screen, to have an accordion from https://export-splitwise.vercel.app/ and accept the API key not JSON
- Create a worker job that first does exactly what the current functionality does
- Fetch ALL transactions in batches
- Fetch more transaction metadata
Along the way, we might switch to https://github.com/athulanilthomas/splitwise-ts
Nice to have
- more granular import, allow importing a subset of groups/friends
- toggle for archived groups
- toggle for not importing settled up expenses
- ability to sync Splitwise data after it has been imported