862 B
862 B
User
type User = {
id: uuid
name: string
email: string
password: string
}
UserAccount
type UserAcccount = {
user_id: uuid
account_id: uuid
}
- join table between User <-> Account.
- use case: account belongs to more than 1 person
Account
type Account = {
id: uuid
name: string // example: Household Expenses
details: string
income: integer // cents // total income
expenses: integer // cents // total expenses
}
- belongs to User
- has many transactions
Stack
- belongs to account
type Stack = {
id: uuid
account_id: uuid
name: string
details: string
amount: integer
}
Transaction
- belongs to Stack
type Transaction = {
id: uuid
stack_id: string
amount: integer // cents
details: string
created_at: UTC datetime ie: 2021-04-15T00:06:21.852620Z
}