Entwicklung¶
FraktionsDesk basiert auf Django. Die Anwendung rendert die meisten Seiten serverseitig und ergänzt gezielt JavaScript. PostgreSQL speichert die fachlichen Daten. Dokumente werden über Paperless-ngx abgelegt und wieder abgerufen. Zusammenarbeit in ausgewählten Editoren läuft über einen separaten Collaboration-Dienst; asynchrone Arbeiten übernimmt ein Worker.
Gemeinsamer Kern und Profilgrenze¶
Core enthält die providerneutralen Arbeitsfunktionen. Duderstadt ergänzt den SessionNet-Provider. Providerabhängiges Verhalten soll an dieser Grenze bleiben, damit gemeinsames FraktionsDesk-Verhalten nicht von einer Kommune oder einem konkreten Ratsinformationssystem abhängt.
Relevante Bereiche¶
core/: Django-Anwendung, fachliche Abläufe, Seiten und Berechtigungen.core/imports/: gemeinsame Importgrenze und normalisierte Importdaten.core/dispatch/: E-Mail-Versandvorbereitung und Versandverarbeitung.core/background_jobs/: Aufgaben, die außerhalb der Webanfrage verarbeitet werden.fraktionsdesk/: Projekteinstellungen und URL-Konfiguration.
Diese Verzeichnisübersicht ist eine Orientierung, keine stabile öffentliche Programmierschnittstelle. Prüfe konkrete Verträge im aktuellen Quellcode.
Änderungen und Qualität¶
Änderungen an Fachlogik sollten die vorhandenen Berechtigungen, Datenintegrität und dokumentierten Arbeitsabläufe erhalten. Nutze die Django- und Browser-Regressionstests, die dem geänderten Verhalten zugeordnet sind. Für Profil- oder Importänderungen sind außerdem die Verträge des jeweiligen Providers zu prüfen.
Produktinterne Testdaten, Deployment-Schritte und nicht redigierte Betriebsdetails gehören nicht in die öffentliche Dokumentation. Die verbindlichen Entwicklungs- und Releaseanweisungen liegen beim Projekt und sind nicht Teil dieses Anwenderportals.