2.3. UML PlantUML

2.3.1. Class Diagram

../../_images/uml-plantuml-diagram-class.png
```plantuml

class Account {
    # username: str
    # password: str
    + login(username: str, password: str) -> None
    + logout() -> None
}

class User {
    # groups: list[str] = ['user']
    + edit_profile() -> None
}

class Admin {
    # groups: list[str] = ['staff', 'admin']
    + edit_user(uid: int) -> None
    + delete_user(uid: int) -> None
}

Account <|-- User
Account <|-- Admin

note as COMMENT
    class User inherits from Account
    class Admin inherits from Account
endnote

```

2.3.2. Sequence Diagram

../../_images/uml-plantuml-diagram-sequence.png
```plantuml
autonumber

actor Client
participant Server
database Database

activate Client
Client ->> Server: HTTP Request

activate Server
Server ->> Database: SQL Query

activate Database
Database -->> Server: Result
deactivate Database

Server -->> Client: HTTP Response
deactivate Server

deactivate Client
```
../../_images/uml-plantuml-diagram-sequence2.png

2.3.3. Gantt

../../_images/uml-plantuml-diagram-gantt.png

2.3.4. Theming

```plantuml
!theme plain
```

2.3.5. Config