---
# System prepended metadata

title: Backend stuff

---

# Backend & Datenbank

+------------+
|   module   |
+------------+
| id: int
| name: string
| titel:string
| description: string
| pdf: string

+------------+
|   user   |
+------------+
| id: long 
| name: string
| email: string
| class_id: long

+------------+
|   class   |
+------------+
| id: long
| name: string
| date_begin: date
| date_end: date


+------------+
|   class_module   |
+------------+
| module_id: int 
| class_id: long
| teacher_id: long

+------------+
|   sidequest   |
+------------+
| id: long
| module_id: int 
| author_id: long
| titel: string
| link: string


+------------+
|   handout   |
+------------+
| id: long
| class_id: long
| sidequest_id: long
| block: enum
| isActive: bool
| date: date (optional)


---
```mermaid
classDiagram
    module --|> Class
  user --|> Class
  class_module --|> module
  class_module --|> Class
  class_module --|> user
  sidequest --|> module
  sidequest --|> user
  Class --|> handout
  sidequest --|> handout

  class module {
    +id: int
    +name: string
    +titel: string
    +description: string
    +pdf: string
  }

  class user {
    +id: long
    +name: string
    +email: string
    +class_id: long
  }

  class Class {
    +id: long
    +name: string
    +date_begin: date
    +date_end: date
  }

  class class_module {
    +module_id: int
    +class_id: long
    +teacher_id: long
  }

  class sidequest {
    +id: long
    +module_id: int
    +author_id: long
    +titel: string
    +link: string
  }

  class handout {
    +id: long
    +class_id: long
    +sidequest_id: long
    +block: enum
    +isActive: bool
    +date: date (optional)
  }
```

## Template für Hedgedoc

```
[name={user.name}]
tags:{modulname}
---
```
