Entity Relationship Diagram
There are 3 entities defined: User
, Transaction
, and Category
. A user can create many transactions, but each transaction must have one category.
Entity Relationship Diagram of Tabunganku.
User
contains username
and email
properties, which are self-explanatory.
Column | Type |
---|---|
username | Text |
Text |
For Transaction
, it contains category
, which will be filled by category ID of the transaction. date
property is used to store when the transaction happens, and note
is additional information regarding the transaction.
Column | Type |
---|---|
amount | Int |
category | Text |
note | Text |
date | Date |
Entity Category
has several unique properties. active
property determines if the category is active or not. icon
is used to locate the category icon location. type
is the type of category. There are 2 types: Earning or Expense.
Column | Type |
---|---|
active | Bool |
icon | Text |
type | Text |
name | Text |
Architectural Diagram
Architecture Diagram of Tabunganku.
In Tabunganku, a user will connect to a public API, which will be handled by a service connecting to a Postgres instance. I use Postgres as the datastore because I am familiar with the technology, and I want to use the foreign key property that does not exist in NoSQL like MongoDB.