Skip to content

Data Model

The term data model might sound nerdy at first (unless you are a nerd), but after all, it just means: What kinds of items are we talking about?

The following diagram illustrates the items that we app uses internally:

erDiagram
  Library ||--o{ TodoList : contains
  Library ||--o{ Note : contains
  Library ||--o{ Image : contains

  TodoList ||--o{ Todo : contains

  Todo ||--o{ Task : contains

  Note ||--o{ Page : contains
  • A Library is a container for a set of top level items. These are:
  • Todo Lists - lists of todos which can be worked on.
    • Todos in turn can contain Tasks, which allow to further break down the necessary work.
  • Notes are simple text containers - at least you can use them like this.
    • However, it is possible to add additional Pages to a note, which effectively makes a note a Note Book.
  • Images are items which combine an image file (a photo, diagram, ...) with other attributes like a title and description.

Some properties of the various types of items are shared among most of them - for example, all items have a title, nearly all of them a description or notes. Other properties are specific to a single type of item, e.g. todos and tasks have a done property, while images have an image file associated with them.