AGENTS.md neu angelegt: Vorgaben für TypeScript/Mithril-Entwicklung (responsives Design via w3-auto, Formatierung längerer Attributlisten, ClosureComponent-Muster, Datenmodelle in Client/models, REST-API-Gerüst). ai-context/AI-operative_Vorgaben.md und mistral-context.md an die aktuelle Projektstruktur (App_Server, Client, NGINX_Server) angepasst. Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
64 lines
3.4 KiB
Markdown
64 lines
3.4 KiB
Markdown
# AI.md — Strukturvorgaben für neue Applikation
|
||
|
||
**Autoren:** Björn Runden <br@chamaeleoncloud.de>, Gerd Goldberg <Gerd.Goldberg@outlook.com>, Bruno Runden <acc@bruno.zone>
|
||
**Zweck dieses Dokuments:** Verbindliche strukturelle, betriebliche und infrastrukturelle Vorgaben für eine neue Python-Applikation. Applikationslogik, Routing und Frontend sind bewusst nicht Teil dieses Dokuments.
|
||
|
||
---
|
||
|
||
## 1. Technologie-Stack
|
||
|
||
| Schicht | Technologie |
|
||
|---|---|
|
||
| Backend-Framework | Python Flask 2.x |
|
||
| OIDC-Authentifizierung | Authlib (gegen Zitadel als externen IdP) |
|
||
| Datenbank / ORM | SQLite + SQLAlchemy |
|
||
| Konfiguration | 12-Factor-App via `.env`-Datei |
|
||
| Produktions-Server | Waitress |
|
||
| Container | Docker (`python:3.11-slim`), orchestriert via `docker-compose.yml` |
|
||
| Frontend-Framework | Mithril.js |
|
||
|
||
---
|
||
|
||
## 2. Verzeichnisstruktur
|
||
|
||
```text
|
||
.
|
||
├── ai-context/ # Anweisungen und Information für Mistral AI
|
||
├── App_Server/ # Enthält Alles, was auf den Server (Backend) gehört
|
||
│ ├── data/ # enthält die SQLite-Datenbanken
|
||
│ ├── Dockerfile
|
||
│ ├── root/ # Enthält alle Python-Programme
|
||
│ │ ├── approot.py
|
||
│ │ ├── auth # Enthält Programme zu Benutzerverwaltung
|
||
│ │ │ ├── model/ # Enthält die Datenmodelle der Benutzerverwaltung
|
||
│ │ │ └── routes.py
|
||
│ │ ├── config.ini
|
||
│ │ ├── db.py
|
||
│ │ ├── requirements.txt
|
||
│ │ ├── routes/ # Enthält die Route-Definitionen für Flask
|
||
│ │ ├── runserver.py
|
||
│ │ ├── settings.py
|
||
│ │ └── templates/ # enthält die Vorlagen für Jinja2
|
||
│ └── scripts/ # enthält Scripts, die im Dockjer-Container ausgeführt werden
|
||
├── Client/ # Enthält alles, was für die Browser-basierte GUI erforderlich ist
|
||
│ ├── Components/ # enthält die mit mithril.js entwickelten GUI-Komponenten
|
||
│ │ ├── auth/ # enthält die GUI-Komponenten für die Benutzer-Verwaltung
|
||
│ │ │ └── models/ # enthält die Datenmodelle für die Benutzerverwaltung
|
||
│ │ └── widgets # enthält einzelne GUI-Elemente wie Eingabefelder u.ä., die dann in den Komponenten verwendet werden
|
||
│ ├── index.ts
|
||
│ ├── inireader.mjs
|
||
│ ├── node_modules/
|
||
├── docker-compose.base.yaml
|
||
├── docker-compose.dev.yaml
|
||
├── docker-compose.prod.yaml
|
||
├── docker-compose.save.yaml
|
||
├── Dokumentationen/ # enthält Dokumente, die für die Entwicklung wichtig sind
|
||
├── mistral-context.md
|
||
├── NGINX_Server/ # enthält die Konfiguration für den im Docker-Container laufenden NGINX-Server
|
||
│ ├── certs/ # enthält die Zertifikatsdateien für die SSL-Verschlüsselung
|
||
│ ├── configtemplates
|
||
│ ├── Dockerfile
|
||
│ └── html/
|
||
│ └── static/ # enthält die statischen Elemente der GUI, wie css-Dateien und Javascript-Dateien
|
||
└── README.md
|
||
``` |