93827dde0f926b270a5dfa928735e5a2123c0c1f
Server: Die list-Endpunkte für Kontakt, Projekt, Kontaktadresse und CallLog akzeptieren nun einen optionalen Query-Parameter (kunden_id bzw. projekt_id) und filtern im ORM-Query. Neue Migration V01.05 legt Indizes auf den FK-Spalten an. Client: Die fetch-Funktionen erhalten einen optionalen Parent-ID-Parameter. Die Listen-Komponenten übergeben die Parent-ID aus den Route-Params an den Server und laden nur noch benötigte Daten. Statt kompletter Eltern-Listen wird per fetchXxxById ein einzelner Datensatz für die Namensauflösung geladen. Die CallLog-Bearbeitungsmaske behält ihre ungesfilterten Dropdown-Abrufe. Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
kbcrm
[Kurzbeschreibung folgt – Zweck und Ziel der Applikation]
Authentifizierung vollständig an Zitadel delegiert. Lokale Datenhaltung, Benutzer- und Rollenverwaltung über SQLite.
Technologie-Stack
| Komponente | Technologie |
|---|---|
| Backend | Python Flask 2.x |
| OIDC-Client | Authlib |
| Datenbank | SQLite via SQLAlchemy |
| IdP | Zitadel |
| Produktion | Docker / waitress |
| web-js-frontend | mithril.js |
Lokale Entwicklung
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # Zitadel-Credentials eintragen
flask db-init # Schema initialisieren
flask seed-db # Testdaten einspielen
flask run # App startet auf http://localhost:5000
Languages
TypeScript
61.1%
Python
31.6%
CSS
4.3%
Shell
1.4%
Dockerfile
0.8%
Other
0.8%