# plantplan

> Python-Projekttemplate mit Standard-Verzeichnisstruktur und Umgebungsverwaltung.

## Projektstruktur

```
plantplan/
├── bin/                    # Skripte zur Umgebungsverwaltung
│   ├── setenv.bat/.sh      # Umgebungsvariablen setzen
│   ├── install_py.bat/.sh  # venv erstellen + pip install
│   ├── activate_venv.bat/.sh # venv aktivieren
│   └── get_cmd.bat/.sh     # Shell mit Umgebung öffnen
├── cfg/                    # Konfigurationsdateien (INI/JSON)
├── data/                   # Eingabedaten (nicht im Git)
├── doc/                    # Dokumentation
├── examples/               # Beispieldateien
├── lib/                    # Python-Quellcode / Bibliothek
├── log/                    # Log-Dateien (nicht im Git)
├── results/                # Ergebnisse / Ausgaben (nicht im Git)
├── tests/                  # Unit Tests
├── .gitignore
├── LICENSE
├── README.md
└── requirements.txt
```

## Umgebungsvariablen

Nach dem Ausführen von `setenv` stehen folgende Variablen bereit:

| Variable       | Beschreibung              |
|----------------|---------------------------|
| `PROJECT`      | Wurzelverzeichnis          |
| `PV_BIN`       | Skriptverzeichnis          |
| `PV_LIB`       | Python-Quellcode           |
| `PV_CFG`       | Konfigurationsdateien      |
| `PV_DATA`      | Eingabedaten               |
| `PV_LOG`       | Log-Dateien                |
| `PV_RESULTS`   | Ergebnisse                 |
| `PV_EXAMPLES`  | Beispieldateien            |
| `PYTHONPATH`   | Erweitert um `PV_LIB`      |

## Installation

### Voraussetzungen

- Python 3.10 oder höher

### Setup (Windows)

```bat
bin\install_py.bat
```

### Setup (Linux / macOS)

```bash
bash bin/install_py.sh
```

Erstellt `.venv` und installiert alle Pakete aus `requirements.txt`.

## Nutzung

### Umgebung setzen (Windows)

```bat
bin\setenv.bat
```

### Umgebung setzen (Linux / macOS)

```bash
source bin/setenv.sh
```

### Shell mit gesetzten Variablen öffnen

```bat
bin\get_cmd.bat          # Windows
source bin/get_cmd.sh    # Linux / macOS
```

### venv aktivieren

```bat
bin\activate_venv.bat          # Windows
source bin/activate_venv.sh    # Linux / macOS
```

## Lizenz

MIT License — siehe [LICENSE](LICENSE)

## Autor

Michael Stangl (GitHub: mistamichael)
