Cursor Praxisprojekt-04 - Leichtgewichtiges Meeting-Management-Tool (1)

Projektbeschreibung

Cursor Praxisprojekt-04

Zeitaufwand: Ca. 10 Stunden

Cursor-Nutzung: Aufgrund der komplexen Modulstruktur musste das Projekt modularisiert werden. Phase 1 erforderte ca. 80 Nutzungen.

Dies ist ein minimalistisches Meeting-System zur Vereinfachung der Meeting-Organisation. Es wurde für effizienzorientierte Nutzer entwickelt und ermöglicht die sofortige Nutzung ohne Registrierung oder Login.

Leichtgewichtige Architektur mit flexibler Bereitstellung: Traditionelle Datenbanken wurden vollständig durch Seafile als Dateispeicher-Backend ersetzt. Alle Meeting-Daten (Inhalte, Teilnehmer, Testergebnisse etc.) werden als Dateien gespeichert, was eine extrem leichte Systemarchitektur ermöglicht.

Barrierefreie Teilnahme: Der Zugriff erfolgt über einen eindeutigen Meeting-Link und Passwort ohne jegliche Kontopflicht. Das System unterstützt QR-Code-Check-ins und ermöglicht Teilnehmern, jederzeit vor/nach dem Meeting Feedback zu geben.

Integrierte Funktionalität: Neben grundlegenden Meeting-Funktionen bietet das System leistungsfähige Online-Tests. Organisatoren können Fragen importieren, Teilnehmer antworten online, und das System zeichnet Ergebnisse automatisch auf - ideal für Schulungen oder Workshops mit Lernerfolgskontrolle.

Zwischenergebnisse (Phase 1)

  • Implementierte Funktionen

    • Grundgerüst implementiert

    • Anbindung an lokales Seafile

    • Meeting-Erstellung

    • Webseite zur Meeting-Liste und Detailansicht

      Design
  • Geplante Funktionen (Phase 2)

    • Meeting-Check-in
    • Feedback-Funktion
    • Automatische Protokollgenerierung
    • Testauswertung

Vorbereitung

  • Cursor

    • Version: 1.2.4
    • Cursor-Regeln: Cursor Rules
    • Agent: claude-4-sonnet-thinking
  • Workflow

    • Cursor-Regeln festlegen -> Anforderungen beschreiben -> Codierung -> Git-Versionskontrolle -> Debugging

Technische Architektur

  1. Tech-Stack
    • Backend: Python mit Flask/FastAPI
    • Frontend: Moderne Frameworks (React, Vue) oder Vanilla JS
    • Datenspeicher: Seafile-Dateiverwaltung statt klassischer Datenbank
  2. Datenfluss und Speicherung
    • Meeting-Daten: Alle Daten werden als Dateien in Seafile gespeichert

    • Dateistruktur:

      • meeting_data.json: Metadaten (Thema, Zeit, Passwort-Hash, Teilnehmerliste etc.)
      • quiz.json: Fragen und Antworten
      • meeting_minutes.md: Automatisiertes Protokoll
      • attachments/: Anhänge
    • Backend: Dient als Middleware zwischen Frontend und Seafile

    • Zugriffskontrolle: Passwortabfrage für Meeting-Details, öffentliche Liste ohne Authentifizierung

Probleme und Lösungen

  1. Problem 1: Hohe Komplexität führte zu ineffizienter Codierung
    • Lösung: Modularisierung und spätere Integration
  2. Problem 2: Seafile-Integration
    • Hauptprobleme:
      • Falsches Upload-Format (Content-Type-Konflikt)
      • Dateiinhalte vs. Download-Links
      • Root-Verzeichnis-Berechtigungen
    • Lösungen:
      • Header-Anpassung für korrekten Multipart-Upload
      • Zwei-Schritt-Dateiabruf
      • Fehlerbehandlung für Berechtigungsprobleme
  3. Problem 3: Unbekannte Seafile-Version
    • Lösung: Versionsabfrage und angepasstes Debugging
  4. Problem 4: Überflüssige übergeordnete Verzeichnisse
    • Lösung: Zusätzliche Bereinigungsfunktion nach 30+ fehlgeschlagenen Versuchen

Erkenntnisse

  1. Komplexe Projekte müssen modular entwickelt werden
  2. Bei hartnäckigen Problemen: Modellwechsel oder neuen Dialog starten

Detaillierte Projektphasen

  1. Anforderungsanalyse mit LLM (Google Gemini 2.5 Flash)
Ich möchte ein leichtgewichtiges Meeting-System ohne Login. Nutzer sollen Meetings erstellen und per Link teilen können. Funktionen: QR-Check-in, Feedback, automatische Protokollgenerierung.

Architekturvorschlag? Möglichst leichtes Backend ohne Datenbank (vorhandenes Seafile nutzbar?).

-> Ergebnis: Detailliertes Anforderungsdokument (pj-requirement.md)

Anforderungen Anforderungen
  1. Systemdesign in Cursor
Review the requirements documentation and proceed with system design.

Anforderungsanalyse und Systemdesign

Design Architekturdiagramm
  1. Umgebungssetup und Grundgerüst

  2. Herausforderungen bei Seafile-Integration (mehrere Iterationen)

  3. Verzeichnisprobleme (rekursive Erstellung)

  4. Abschluss Phase 1

Phase 1 abgeschlossen
  1. Weiterentwicklung folgt in: 《Cursor Praxisprojekt-04 - Leichtgewichtiges Meeting-Management-Tool (2)》