Skip to main content

Database Schema

OpenTree uses a SQLite database managed via Sequelize ORM.

Table Structure

keychains

FieldTypeDescription
idUUID (PK)Primary key
nameSTRINGName
urlSTRINGURL
phoneSTRINGPhone number
emailSTRINGEmail
passwordSTRINGPassword
noteTEXTNote
createdAtDATECreated time
updatedAtDATEUpdated time

favorites

FieldTypeDescription
idUUID (PK)Primary key
nameSTRINGCustom name
titleSTRINGPage title
urlSTRINGURL
faviconSTRINGfavicon URL
faviconDataBLOBfavicon data
tagsJSONTags array
descriptionTEXTDescription
createdAtDATECreated time

music

FieldTypeDescription
idUUID (PK)Primary key
nameSTRINGSong name
artistSTRINGArtist
albumSTRINGAlbum
durationFLOATDuration (seconds)
playlistIdUUID (FK)Playlist ID
filePathSTRINGFile path
mimeTypeSTRINGMIME type
lastPlayedAtDATELast played
playCountINTPlay count

music_playlists

FieldTypeDescription
idUUID (PK)Primary key
nameSTRINGPlaylist name
createdAtDATECreated time

countdowns

FieldTypeDescription
idUUID (PK)Primary key
nameSTRINGName
targetDateDATEONLYTarget date
repeatTypeSTRINGRepeat type
repeatIntervalINTRepeat interval
createdAtDATECreated time

notes

FieldTypeDescription
idUUID (PK)Primary key
titleSTRINGTitle
contentTEXTContent
folderIdUUID (FK)Folder ID
tagsJSONTags
pinnedBOOLEANPinned
createdAtDATECreated time
updatedAtDATEUpdated time

note_folders

FieldTypeDescription
idUUID (PK)Primary key
nameSTRINGFolder name
parentIdUUID (FK)Parent folder
createdAtDATECreated time

wallet_items

FieldTypeDescription
idUUID (PK)Primary key
typeSTRINGIncome/Expense
amountFLOATAmount
categorySTRINGCategory
descriptionTEXTDescription
dateDATEONLYDate
tagsJSONTags
createdAtDATECreated time

ER Diagram