- Flask-App mit SQLite, Projekt-Einreichung und Bewerbungen - Suche und Filter nach Kategorie - Modernes UI mit Bootstrap 5 und Custom CSS - 6 Demo-Projekte via seed_demo_data.py - Docker und docker-compose Support Made-with: Cursor
71 lines
3.3 KiB
Python
71 lines
3.3 KiB
Python
"""Demo-Projekte für die Open-Source Projektplattform laden."""
|
|
import os
|
|
import sys
|
|
|
|
# Projekt-Root zum Python-Pfad hinzufügen
|
|
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
from app import app
|
|
from models import db, Projekt
|
|
|
|
|
|
DEMO_PROJEKTE = [
|
|
{
|
|
"titel": "Digitale Antragsstellung für Baugenehmigungen",
|
|
"beschreibung": "Entwicklung einer Open-Source-Webanwendung, die Bürgerinnen und Bürgern ermöglicht, Baugenehmigungsanträge digital einzureichen. Die Lösung soll Formularvalidierung, Dokumenten-Upload und Status-Tracking umfassen sowie mit bestehenden Fachverfahren kommunizieren können.",
|
|
"kategorie": "Bau & Planung",
|
|
"behoerde": "Kreis Rendsburg-Eckernförde",
|
|
"kontakt_email": "bauamt@kreis-rd.de",
|
|
},
|
|
{
|
|
"titel": "Open-Source Dokumentenmanagement für Kommunen",
|
|
"beschreibung": "Gemeinsame Entwicklung eines DMS für kleine und mittlere Kommunen in Schleswig-Holstein. Fokus auf Aktenführung, Ablage, Volltextsuche und revisionssichere Archivierung. Soll DSGVO-konform und barrierefrei sein.",
|
|
"kategorie": "Verwaltung",
|
|
"behoerde": "Stadt Neumünster",
|
|
"kontakt_email": "it@neumuenster.de",
|
|
},
|
|
{
|
|
"titel": "Barrierefreie Terminbuchung für Bürgerämter",
|
|
"beschreibung": "Terminbuchungssystem für Bürgerämter, das WCAG 2.1 AA erfüllt und mit Screenreadern nutzbar ist. Integration in bestehende Webauftritte, Kalender-Synchronisation und Warteschlangen-Management.",
|
|
"kategorie": "Bürgerdienste",
|
|
"behoerde": "Hansestadt Lübeck",
|
|
"kontakt_email": "buergerservice@luebeck.de",
|
|
},
|
|
{
|
|
"titel": "Transparenzportal für Ratsbeschlüsse",
|
|
"beschreibung": "Plattform zur Veröffentlichung und Durchsuchbarkeit von Ratsbeschlüssen, Sitzungsunterlagen und Protokollen. Ziel: mehr Transparenz und einfacher Zugang für Bürgerinnen und Bürger sowie Presse.",
|
|
"kategorie": "Demokratie & Partizipation",
|
|
"behoerde": "Kreis Nordfriesland",
|
|
"kontakt_email": "ratsbuero@nordfriesland.de",
|
|
},
|
|
{
|
|
"titel": "Schulverwaltungssoftware für Stundenpläne",
|
|
"beschreibung": "Open-Source-Tool zur Erstellung und Verwaltung von Stundenplänen für allgemeinbildende Schulen. Berücksichtigung von Lehrkräften, Räumen, Fächern und Nebenbedingungen. Export für digitale Schwarze Bretter.",
|
|
"kategorie": "Bildung",
|
|
"behoerde": "Ministerium für Allgemeine und Berufliche Bildung",
|
|
"kontakt_email": "digitalisierung@bildung.landsh.de",
|
|
},
|
|
{
|
|
"titel": "Meldeportal für Straßenschäden",
|
|
"beschreibung": "Bürger-App und Webportal zum Melden von Straßenschäden (Schlaglöcher, Risse, defekte Beleuchtung). Mit Foto-Upload, Geoposition und Status-Updates. Anbindung an bestehende Straßenunterhaltungs-Systeme.",
|
|
"kategorie": "Infrastruktur",
|
|
"behoerde": "Landeshauptstadt Kiel",
|
|
"kontakt_email": "strassenbau@kiel.de",
|
|
},
|
|
]
|
|
|
|
|
|
def main():
|
|
with app.app_context():
|
|
if Projekt.query.count() > 0:
|
|
print("Datenbank enthält bereits Projekte. Überspringe Seed.")
|
|
return
|
|
for p in DEMO_PROJEKTE:
|
|
db.session.add(Projekt(**p))
|
|
db.session.commit()
|
|
print(f"{len(DEMO_PROJEKTE)} Demo-Projekte wurden angelegt.")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|