Data model
The data model of Cycle is very flexible and can be seen as a no-code relational database management system.
Last updated
The data model of Cycle is very flexible and can be seen as a no-code relational database management system.
Last updated
With Cycle you have the same kind of entities and relation as in a relational database. This allows lots of configurations to match any product team needs while staying opinionated on some key product management concepts.
Cycle meta concept | Relational DB analogy |
---|---|
Doctype | Table |
Property | Column (with datatype) |
Doc | Row |
Hierarchy | Relation (1 to many only) |
Board | View |
Hence a Doc can be visualised under different boards (depending on the board config) and modifying its Property values will affect it globally in the workspace.
Docs can have a parent and/or multiple children depending on their Doctype.
The Properties can be linked to multiple Doctypes which allows to make sophisticated product management knowledge visualisation with the Boards and their config.
Such data intrication lead to multiple side effects. For instance, whenever a Doctype is deleted or a Property is added to a Doctype, it potentially impacts all the Board configs. On the client side, we add a lot of validation to make sure the user really wants to do the action. It is up to you to make this validation while using the graphql API.