| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
P opens the application for the first time.
P Starts sign in process.
P enters the bio details
The system registers a new user with supabase
On successful registration system calls signup trigger
Signup trigger creates a new private vault locally
Signup trigger creates a new vaults participants field associating supabase id (user identity) with the private vault
P creates a budget [ie., monthly budget]
P creates categories within the budget [i.e., Food, Transport] within the budget
P creates accounts within each category [i.e., Food (Groceries, takeout)]
For each account, P associates the account with a Concept
P saves their budget configuration.
The system saves the configuration locally
The system encrypts everything in the private vault using the private key
The system uploads the document to bucket
On successful upload, the system uploads the metadata
P wants to analyze their trasactions against their budget
P enters their bank trasaction statement PDF
P chooses the financial inst from a list of supported
The system requests all parse information for the bank (including older information for backward compatibility)
The system follows regex instructions and attempts parsing using all the instructions, stopping incase one is successful
The system extracts specifically money out transactions
The system caches instructions to reduce reliance on online connectivity
The system uses a fuzzy search to index all the vendors in the financial documents
The system checks to see if any accounts have been previously associated with the vendors
The system allows the user to create associations for all the transactions (transactions under the hood are tied to concrete concepts). This step is required by the system.
The system also presents the transactions that it has very positively identified.
The system allows the user to perform operations such as split transaction (in case one verndor was used to fulfill different accounts), Ignore transactions (to avoid outliers), to re-associate incase a wrong association was made.
Once P is comfortable, the user chooses to analyze thier spending against their budget
The system stores their information in their private vault
The system encrypts the private vault
The system uploads the encrypted information and its metadata
P can now see analysis of his spending!
Later on, P moves to a new place, his budget is completely unusable. he needs a new one.
P is creating the accounts, but he realizes that the system suggests concepts related to the account.
The system makes the suggestion mostly using fuzzy matching.
P chooses concepts most closely matching his needs, but sometimes no concepts match the account as well.
P saves the new budget.
The system saves and encrypts
The system then uploads
The system updates concepts accordingly.
P decides to analyze their new paycheck
The system relies on concepts to retain vendor - account relationships in the new transactions
P goes through less hell creating associations
P intends to budget with their close friend F
P starts the shared budget
The system initializes a new shared vault that only P is a part of
The system generates a new DEK for the vault
P sends F and invite link
F accepts
F's system authenticates them to accept invite
F's system shares its public key via the server
P's system uses F's public key to wrap the vaults DEK
F's system uses their private key to unwrap the DEK
Both systems now have a DEK that can decrypt the shared vault
Budgets created in the shared vault are accessible by both F and P
Here is an exampe of how a request for vault backup manifests (metadata) is handled
| Back | FazBrowse Home | New Git URL |