# PROJECT_STRUCTURE

Dieses Dokument beschreibt die grundlegende Projektstruktur von Reconcilix.

## Hauptverzeichnisse

```text
config/
docs/
evaluation/
public/
src/
tools/
tests/
```

## config/

Enthält Konfigurationsdateien.

Lokale Zugangsdaten dürfen nicht versioniert werden.

Beispiel:

```text
credentials.local.php
```

wird über `.gitignore` ausgeschlossen.

## docs/

Enthält dauerhafte Projektdokumentation.

Wichtige Dokumente:

```text
docs/current/VISION.md
docs/current/GLOSSAR.md
docs/current/RULES.md
docs/current/ROADMAP_PROJECT.md
docs/current/ROADMAP_MATCHING.md
docs/current/adr/
```

## docs/current/adr/

Enthält Architecture Decision Records.

Beispiel:

```text
ADR-A001-match_baseline.md
ADR-A002-evaluation_export_pipeline.md
```

## evaluation/

Enthält reproduzierbare Evaluationen.

Evaluationen sind Teil der Projektmethodik und werden versioniert.

Typische Struktur:

```text
evaluation/
  matcult-the_vocnet_org_00000019/
    2026-06-29_E001_match_baseline/
      E001.md
      I01.md
      metrics.md
```

## public/

Enthält öffentlich aufrufbare Einstiegspunkte der Webanwendung.

Beispiele:

```text
index.php
reconcile.php
evaluation-export.php
```

## src/

Enthält den Anwendungscode.

Wichtige Bereiche:

```text
src/ReconciliationStore/
src/Evaluation/
src/Ranking/
```

## tools/

Enthält Hilfswerkzeuge und CLI-Skripte.

## tests/

Enthält Tests.

## Nicht versionierte Verzeichnisse

Folgende Verzeichnisse werden lokal genutzt, aber nicht versioniert:

```text
local/
source/
logs/
vendor/
```

Sie enthalten Eingabedaten, erzeugte Daten, Logs oder lokal installierte Abhängigkeiten.
