# netdieter/ki-projekte architecture

> Architecture diagram of the GitHub repository netdieter/ki-projekte, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/netdieter/ki-projekte
- Repository: https://github.com/netdieter/ki-projekte

## Overview

This repository is a small collection of Java utilities, not one integrated application. Its main user-facing behaviors are estimating task progress, searching and reading files, storing keyed protocol records as JSON lines, and merging identically formatted Word paragraph runs. The task simulator is a runnable example of the progress-estimation API. Edges reflect visible calls, inheritance, and file operations; the README does not document broader integration among these utilities.

Main entry points: [`src/main/java/de/kivibecoding/protokoll/ProtokollManager.java`](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ProtokollManager.java) (Protocol Manager), [`src/main/java/de/kivibecoding/protokoll/EstimatedTask.java`](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/EstimatedTask.java) (Estimated Task), [`src/main/java/de/kivibecoding/protokoll/TaskSimulation.java`](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/TaskSimulation.java) (Task Simulator), [`src/main/java/de/kivibecoding/protokoll/FileSearcher.java`](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/FileSearcher.java) (File Searcher)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_tasks["Task Progress"]
  node_simulator["Task Simulator"]
  node_estimated_task["Estimated Task<br/>[EstimatedTask.java]"]
  node_task["Task State<br/>[Task.java]"]
end

subgraph group_files["File Utilities"]
  node_file_searcher["File Searcher<br/>[FileSearcher.java]"]
end

subgraph group_protocol["Protocol Records"]
  node_protocol_manager["Protocol Manager"]
  node_protocol_object["Protocol Record"]
end

subgraph group_documents["Word Documents"]
  node_paragraph_optimizer["Paragraph Optimizer"]
end

node_file_system[("Local Files")]

node_simulator -->|"creates and updates"| node_estimated_task
node_estimated_task -->|"extends"| node_task
node_file_searcher -->|"searches and reads"| node_file_system
node_protocol_manager -->|"reads and appends"| node_file_system
node_protocol_manager -->|"serializes and parses"| node_protocol_object

click node_simulator "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/TaskSimulation.java"
click node_estimated_task "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/EstimatedTask.java"
click node_task "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/Task.java"
click node_file_searcher "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/FileSearcher.java"
click node_protocol_manager "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ProtokollManager.java"
click node_protocol_object "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ProtokollObjekt.java"
click node_paragraph_optimizer "https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ParagraphOptimizer.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_simulator,node_estimated_task,node_task toneBlue
class node_file_searcher,node_file_system toneAmber
class node_protocol_manager,node_protocol_object toneMint
class node_paragraph_optimizer toneRose
```

## Components

### Task Progress

- [Task Simulator](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/TaskSimulation.java): `src/main/java/de/kivibecoding/protokoll/TaskSimulation.java`
- [Estimated Task](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/EstimatedTask.java): `src/main/java/de/kivibecoding/protokoll/EstimatedTask.java`
- [Task State](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/Task.java): `src/main/java/de/kivibecoding/protokoll/Task.java`

### File Utilities

- [File Searcher](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/FileSearcher.java): `src/main/java/de/kivibecoding/protokoll/FileSearcher.java`

### Protocol Records

- [Protocol Manager](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ProtokollManager.java): `src/main/java/de/kivibecoding/protokoll/ProtokollManager.java`
- [Protocol Record](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ProtokollObjekt.java): `src/main/java/de/kivibecoding/protokoll/ProtokollObjekt.java`

### Word Documents

- [Paragraph Optimizer](https://github.com/netdieter/ki-projekte/blob/main/src/main/java/de/kivibecoding/protokoll/ParagraphOptimizer.java): `src/main/java/de/kivibecoding/protokoll/ParagraphOptimizer.java`

### Other components

- **Local Files**

## Connections

- Task Simulator → Estimated Task: creates and updates (evidence: `src/main/java/de/kivibecoding/protokoll/TaskSimulation.java`)
- Estimated Task → Task State: extends (evidence: `src/main/java/de/kivibecoding/protokoll/EstimatedTask.java`)
- File Searcher → Local Files: searches and reads (evidence: `src/main/java/de/kivibecoding/protokoll/FileSearcher.java`)
- Protocol Manager → Local Files: reads and appends (evidence: `src/main/java/de/kivibecoding/protokoll/ProtokollManager.java`)
- Protocol Manager → Protocol Record: serializes and parses (evidence: `src/main/java/de/kivibecoding/protokoll/ProtokollManager.java`)
