Compare commits

...

7 Commits

Author SHA1 Message Date
ea9479628c Testing...
Some checks failed
build-debian-package / Build the debian package (push) Failing after 36s
Word Count / count-words (push) Failing after 1m1s
2026-04-17 10:22:23 +02:00
aa704577ad Use Prebuilt Container
Some checks failed
Word Count / count-words (push) Failing after 1m35s
2026-04-16 23:07:22 +02:00
15eb9d9d5e Install Mermaid CLI
Some checks failed
build-debian-package / Build the debian package (push) Failing after 7m45s
Word Count / count-words (push) Failing after 37s
2026-04-16 22:34:42 +02:00
f11fcb68fe Fix: pipeline
Some checks failed
Word Count / count-words (push) Failing after 35s
2026-04-16 22:24:19 +02:00
8da8374a1b kürzere version der präsi
Some checks failed
Word Count / count-words (push) Failing after 37s
2026-04-16 21:31:38 +02:00
d397f0cd60 Revert addition of presentation to lib folder
Some checks failed
Word Count / count-words (push) Failing after 38s
2026-04-16 21:18:18 +02:00
b450fd6475 Add concise presentation to lib folder
Some checks failed
Word Count / count-words (push) Failing after 34s
2026-04-16 21:17:16 +02:00
2 changed files with 36 additions and 63 deletions

View File

@@ -8,6 +8,7 @@ jobs:
build: build:
name: Build the debian package name: Build the debian package
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: "Git clone" - name: "Git clone"
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }}.git . run: git clone ${{ gitea.server_url }}/${{ gitea.repository }}.git .
@@ -15,10 +16,9 @@ jobs:
run: git checkout "${{ gitea.sha }}" run: git checkout "${{ gitea.sha }}"
- name: "Submodules auschecken" - name: "Submodules auschecken"
run: git submodule update --init run: git submodule update --init
- uses: docker://pandoc/core:3.8
- name: "Install dependencies" with:
run: sudo apt-get update && sudo apt-get install pandoc nodejs texlive-latex-full -y args: "--help" # gets appended to pandoc command
- name: "Build .deb" - name: "Build .deb"
run: cd ./Defensio && ./pandoc.sh run: cd ./Defensio && ./pandoc.sh
- name: "Create release" - name: "Create release"

View File

@@ -1,92 +1,65 @@
# Adam Gaiswinkler # Adam Gaiswinkler
## Individueller Teil: Adam Gaiswinkler ## Individueller Teil: Adam Gaiswinkler
**Entwicklung von CMS-Modulen & Frontend-Design** **CMSModul & Frontend**
--- ---
## Ausgangslage & Motivation ## Ausgangslage & Motivation
- **Ausgangssituation**: Bedarf an einer modernen Plattform für den Absolventenverein der HTL Ungargasse. - **Ausgangssituation**: Moderne FrontendPlattform für den Absolventenverein (responsive, neue Features).
- **Persönliche Motivation**: - **Persönliche Motivation**:
- Steigende Verantwortung durch Teamverkleinerung (von 6 auf 3 Personen). - TeamVerkleinerung (63) → mehr Verantwortung.
- Identifikation mit dem Projekt wuchs deutlich. - Projektidentifikation & PraxisBlazor/ASP.NET.
- Praktische Anwendung von Blazor & ASP.NET in einem realen Umfeld. - **Ziele**:
- **Individuelle Ziele**: - OqtaneModule (Anmeldetool, HallofFame).
- Entwicklung von Oqtane-Modulen (Anmeldetool & Hall of Fame). - Responsives UI/UX.
- Web-Entwicklung mit Fokus auf responsives und nutzerfreundliches UI/UX.
--- ---
## Eingesetzte Technologien ## Eingesetzte Technologien
- **TechStack**: Bootstrap+CustomCSS, QuestPDF, Gitea, VS2022wechsel zu VSCode (macOS).
- **Styling**: Bootstrap & Custom CSS
- **Spezielle Tools**: QuestPDF (PDF-Generierung), Gitea (Versionskontrolle)
- **Entwicklungsumgebung**: Visual Studio 2022 & Visual Studio Code (macOS)
--- ---
## Umsetzung: Oqtane Theme ## Umsetzung: Oqtane Theme
- **Ziel**: Modernes, schlichtes Design im Stil der HTL Ungargasse (szu.at). - EigenNavigation (bootstrap Komponenten haben nicht gepasst ).
- **Technische Highlights**: - Systemseiten per LINQ ausblenden.
- Vollständige Eigenentwicklung der Navigationslogik (über `PageState.Pages`). - Responsive CSSMediaQueries + reines CSSBurgerMenu.
- **Dynamisches Ausblenden von Systemseiten via LINQ**. - ControlPanel & CookieConsent.
- **Responsive Design**: Einsatz von CSS Media Queries und einer komplett CSS-basierten Burger-Menü-Lösung.
- Integration eines `ControlPanels` und Cookie-Consent.
--- ---
## Umsetzung: Hall of Fame (1) ## Umsetzung: Hall of Fame
- **Zweck**: Sichtbarmachung von erfolgreichen Absolventinnen und Absolventen. - **KartenGrid**: Responsive Übersicht, LiveSuche & Sortierung.
- **UI & UX**: - **DetailSeite**: GlasmorphismusDesign.
- Responsive Kartenübersicht der Personen mit Such- und Sortierfunktion (Echtzeit). - **Workflow**: RichTextEditor, BildUpload (max5MB), Status (Entwurf/Veröffentlicht) inkl. EigentümerCheck.
- Detailseite im modernen "Glasmorphismus"-Design. - **PDFExport**: QuestPDF.
- **Datenerfassung & Workflow**: - **Moderation**: Meldesystem über InterfacesPaket.
- 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) ## Umsetzung: Anmeldetool
- **PDF-Export**: Dynamische Generierung eines ansprechenden Profil-PDFs mittels *QuestPDF*. - Klar getrennte Ja/NeinButtons.
- **Moderation**: - LiveStatusUpdates via Blazor.
- Integriertes Meldesystem (Reporting) direkt über ein separates Interfaces-Paket angesteuert. - UIOverlay, mobilefreundlich.
---
## 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 ## Herausforderungen & Lösungen
- **Plattformwechsel (Windows zu macOS)**: Oqtane ist stark an Windows gekoppelt; gelöst durch Einsatz von JetBrains Rider. - **Plattformwechsel**: Windows → macOS JetBrainsRider.
- **Zeitdruck & Infrastruktur-Ausfälle**: - **HostingProbleme**: Node.js/HTMLÜbergangslösung 2025.
- Probleme mit Hosting (Hetzner).
- **Lösung**: Entwicklung einer schlanken "Übergangslösung" (Node.js/HTML) im Sommer 2025 zur zeitgerechten Event-Abwicklung.
--- ---
## Learnings ## Learnings
- **Technisch**: Tieferes Verständnis von Version Control (Git), CSS/Flexbox (Responsiveness) und C#/Blazor-Tiefen. - **Technisch**: Git, CSSFlexbox, Blazor.
- **Methodisch**: Eine klare Aufgabenaufteilung sowie regelmäßige Team-Meetings sind unerlässlich für den Projekterfolg. - **Methodisch**: Aufgabenverteilung, regelmäßige Meetings.
- **Persönlich**: Bedeutsamkeit von Eigeninitiative und Verantwortungsübernahme, gerade in schwierigen Projektphasen. - **Persönlich**: Eigeninitiative & Verantwortung.
--- ---
## Fazit & Mögliche Erweiterungen ## Fazit & Ausblick
- **Erreichtes**: - Theme final, mobil, Hall of Fame & Anmeldetool funktionsfähig.
- Theme ist final in Oqtane integriert und mobil optimiert. - **Erweiterungen**: TeilnehmerAuswertung, AnmeldeLimit, automatische EMailErinnerungen.
- Hall of Fame und Anmeldetool sind voll funktionstüchtig.
- **Mögliche Erweiterungen**:
- Integration einer umfassenden Teilnehmerlisten-Auswertung (Datenbank).
- Limit-Funktion für maximale Anmeldungen bei Veranstaltungen.
- Automatische E-Mail-Erinnerungen für Events.