3.9 KiB
3.9 KiB
marp, theme, paginate
| marp | theme | paginate |
|---|---|---|
| true | default | true |
Defensio Diplomarbeit: AlumniHub
Individueller Teil: Adam Gaiswinkler
Entwicklung von CMS-Modulen & Frontend-Design
Ausgangslage & Motivation
- Ausgangssituation: Bedarf an einer modernen Plattform für den Absolventenverein der HTL Ungargasse.
- Persönliche Motivation:
- Steigende Verantwortung durch Teamverkleinerung (von 6 auf 3 Personen).
- Identifikation mit dem Projekt wuchs deutlich.
- Praktische Anwendung von Blazor & ASP.NET in einem realen Umfeld.
- Individuelle Ziele:
- Entwicklung von Oqtane-Modulen (Anmeldetool & Hall of Fame).
- Web-Entwicklung mit Fokus auf responsives und nutzerfreundliches UI/UX.
Eingesetzte Technologien
- Backend & Core: C#, ASP.NET Core
- Frontend: Blazor (für interaktive Weboberflächen direkt in C#)
- CMS: Oqtane Framework
- Styling: Bootstrap & Custom CSS
- Spezielle Tools: QuestPDF (PDF-Generierung), Gitea (Versionskontrolle)
- Entwicklungsumgebung: Visual Studio 2022 & JetBrains Rider (macOS)
Umsetzung: Oqtane Theme
- Ziel: Modernes, schlichtes Design im Stil der HTL Ungargasse (szu.at).
- Technische Highlights:
- Vollständige Eigenentwicklung der Navigationslogik (über
PageState.Pages). - Dynamisches Ausblenden von Systemseiten via LINQ.
- Responsive Design: Einsatz von CSS Media Queries und einer komplett CSS-basierten Burger-Menü-Lösung.
- Integration eines
ControlPanelsund Cookie-Consent.
- Vollständige Eigenentwicklung der Navigationslogik (über
Umsetzung: Hall of Fame (1)
- Zweck: Sichtbarmachung von erfolgreichen Absolventinnen und Absolventen.
- UI & UX:
- Responsive Kartenübersicht der Personen mit Such- und Sortierfunktion (Echtzeit).
- Detailseite im modernen "Glasmorphismus"-Design.
- Datenerfassung & Workflow:
- Rich-Text-Editor zur Eingabe des Werdegangs.
- Bild-Upload-System (Live-Vorschau, max. 5 MB) statt manueller URLs.
- Statusverwaltung ("Entwurf" vs. "Veröffentlicht") inkl. Eigentümerprüfung.
Umsetzung: Hall of Fame (2)
- PDF-Export: Dynamische Generierung eines ansprechenden Profil-PDFs mittels QuestPDF.
- Moderation:
- Integriertes Meldesystem (Reporting) direkt über ein separates Interfaces-Paket angesteuert.
- Datenbank & Persistenz:
- Entity Framework Core inkl. Migrationen (
HallOfFameundHallOfFameReportTabellen).
- Entity Framework Core inkl. Migrationen (
Umsetzung: Anmeldetool für Treffen
- Zweck: Vereinfachung der Planung und Teilnehmerverwaltung.
- Funktion:
- Klare, farblich getrennte Zusage- und Absage-Buttons.
- Live-Rückmeldung bei Statusänderung dank Blazor.
- Saubere Trennung von UI-Komponente und Backend-API.
- UX-Optimierung:
- Fokus auf Overlay-Darstellung und Mobile-Clipping-Vermeidung.
Herausforderungen & Lösungen
- Plattformwechsel (Windows zu macOS): Oqtane ist stark an Windows gekoppelt; gelöst durch Einsatz von JetBrains Rider.
- Zeitdruck & Infrastruktur-Ausfälle:
- Probleme mit Hosting (Hetzner).
- Lösung: Entwicklung einer schlanken "Übergangslösung" (Node.js/HTML) im Sommer 2025 zur zeitgerechten Event-Abwicklung.
- Entity Framework Concurrency Issues: Gelöst durch Transaktions-Gliederung bei Löschvorgängen (Reports vs. Main Entity).
Learnings
- Technisch: Tieferes Verständnis von Version Control (Git), CSS/Flexbox (Responsiveness) und C#/Blazor-Tiefen.
- Methodisch: Eine klare Aufgabenaufteilung sowie regelmäßige Team-Meetings sind unerlässlich für den Projekterfolg.
- Persönlich: Bedeutsamkeit von Eigeninitiative und Verantwortungsübernahme, gerade in schwierigen Projektphasen.
Fazit & Ausblick
- Erreichtes:
- Theme ist final in Oqtane integriert und mobil optimiert.
- Hall of Fame und Anmeldetool sind voll funktionstüchtig.
- Ausblick:
- Integration einer umfassenden Teilnehmerlisten-Auswertung (Datenbank).
- Limit-Funktion für maximale Anmeldungen bei Veranstaltungen.
- Automatische E-Mail-Erinnerungen für Events.