🎉 Das neue Waldheim Customer Portal ist live – Zentrale Verwaltung für alle unsere Produkte!
Wir stellen vor: Das Customer Portal – Ihre zentrale Plattform zur Verwaltung von Lizenzen, Abonnements und Support für Ecodrive, Socialverse und Silvacore. Mit vollständiger Stripe-Integration, Multi-User-System und 2FA-Sicherheit. 

Customer Portal: Lizenz- und Abonnement-Verwaltung für Waldheim-Produkte

Entwicklung des Customer Portals: Eine zentrale Plattform zur Verwaltung von Lizenzen, Support-Tickets und Abonnements für alle Waldheim-Produkte (Ecodrive, Socialverse, Silvacore). Mit vollständiger Stripe-Integration, Multi-User-System und Produktmonitoring.

Das Problem

Die Verwaltung von Lizenzen, Abonnements und Support-Anfragen für mehrere Produkte (Ecodrive, Socialverse, Silvacore) über verschiedene Plattformen hinweg war ineffizient und fehleranfällig. Es fehlte eine zentrale, automatisierte Lösung zur Kundenverwaltung, Zahlungsabwicklung und Support-Koordination.

Mit welchem Tech-Stack habe ich gearbeitet?

Go Go
1 Jahr Erfahrung
PostgreSQL PostgreSQL
1 Jahr Erfahrung
Redis Redis
1 Jahr Erfahrung
Valkey Valkey
1 Jahr Erfahrung
Docker Docker
8 Jahre Erfahrung
Traefik Traefik
3 Jahre Erfahrung
Tailwind CSS Tailwind CSS
2,5 Jahre Erfahrung
Playwright Playwright
2 Jahre Erfahrung
Vitest Vitest
2 Jahre Erfahrung
Git Basics Git Basics
9 Jahre Erfahrung
GitLab GitLab
9 Jahre Erfahrung
HTML HTML
13 Jahre Erfahrung
CSS CSS
13 Jahre Erfahrung
JavaScript JavaScript
13 Jahre Erfahrung
Linux Linux
10 Jahre Erfahrung

Unsere Lösung

Entwicklung eines modernen Customer Portals als zentrale Verwaltungsplattform für alle Waldheim.dev-Produkte. Die Lösung bietet automatische Lizenzverwaltung, Stripe-Integration für Abonnements, ein dialogbasiertes Ticket-System und Produktmonitoring. Durch die vollständige Automatisierung und RBAC-basierte Zugriffskontrolle wird die Kundenverwaltung erheblich vereinfacht und professionalisiert.

Auf was habe ich geachtet?

Design
  • TailwindCSS-basiertes UI mit DaisyUI-Komponenten
  • Cyan-Teal Farbschema mit modernen Glow-Effekten
  • Konsistente Designsprache über alle Seiten
  • Responsive Design für Mobile, Tablet und Desktop
  • Accessibility-Optimierungen (WCAG-konform)
  • Intuitive Navigation und User Experience
  • Dark Mode Support durch DaisyUI
  • Moderne Card-basierte Layouts
Frontend
  • Modernes Server-Side Rendering mit Go HTML Templates
  • HTMX für interaktive Elemente ohne JavaScript-Overhead
  • TailwindCSS + DaisyUI für konsistentes Design
  • Cyan-Teal Gradient Theme mit Glow-Effekten
  • Alpine.js für clientseitige Interaktivität
  • FontAwesome Pro für professionelle Icons
  • Responsive Design für alle Endgeräte
  • E2E-Testing mit Playwright
  • Frontend Unit Tests mit Vitest
  • Automatisches Asset-Building und Deployment
Backend
  • Go 1.25 mit Gin Web Framework
  • GORM als ORM für PostgreSQL
  • Viper für Konfigurationsmanagement
  • Valkey (Redis-Fork) für Caching und Sessions
  • Session-basierte Authentifizierung mit Secure Cookies
  • 2FA mit TOTP (Time-based One-Time Password)
  • WebAuthn für Passkey-Support
  • RBAC mit drei Benutzerrollen
  • REST API für Lizenzvalidierung
  • Stripe Webhooks für Zahlungsereignisse
  • E-Mail-Versand mit SMTP (Gomail)
  • Cron Jobs für automatische Synchronisation
  • CSRF-Protection und Rate Limiting
  • UUID-basierte Datenbankmodelle
  • Umfassendes Unit Testing (100% Coverage-Ziel)
Allgemein
  • Zentrale Verwaltungsplattform für drei Produkte (Ecodrive, Socialverse, Silvacore)
  • Multi-User-System mit RBAC (Admin, Kundenbetreuer, Kunde)
  • Automatische Lizenzverwaltung mit UUID-basierter Generierung
  • Vollständige Stripe-Integration für Abonnements und Zahlungen
  • Dialog-basiertes Ticket-System mit E-Mail-Benachrichtigungen
  • Produktstatus-Monitoring und Limit-Tracking
  • Consulting-Buchungssystem (Stundenbasis)
  • Sicherheit durch Session-Auth, 2FA und Passkey-Support
DevOps
  • Docker und Docker Compose für Containerisierung
  • Traefik als Reverse Proxy mit Let's Encrypt SSL
  • Multi-Stage Dockerfiles für optimierte Images
  • GitLab CI/CD Pipeline
  • Air für Hot-Reload in Development
  • Automatisches Frontend-Asset-Building
  • PostgreSQL 18 und Valkey 8 Container
  • Mailhog für lokale E-Mail-Vorschau
  • Production-Ready Deployment mit docker-compose.prod.yml
  • Environment-basierte Konfiguration (.env)
Features
  • Lizenzverwaltung
  • Automatische Generierung von Produktlizenzen
  • UUID-basierte License Keys (Format: PRODUCT-XXXX-XXXX-XXXX-XXXX)
  • API-Endpunkt zur Lizenzvalidierung für Produkte
  • Limit-Tracking (Fahrzeuge, WEGs, Prompts, Storage)
  • Automatische Aktivierung/Deaktivierung
  • Ticket-System
  • Dialog-basierte Support-Tickets
  • E-Mail-Benachrichtigungen bei neuen Nachrichten
  • Status-Tracking (Offen, In Bearbeitung, Geschlossen)
  • Dateianhänge für Tickets
  • Kundenbetreuer-Zuweisung
  • Stripe-Integration
  • Vollständige Abonnementverwaltung
  • Checkout-Session-Erstellung
  • Webhook-Verarbeitung für Zahlungsereignisse
  • Automatische Lizenzverlängerung bei Zahlung
  • Kundenportal für Abonnementsverwaltung
  • Produktmonitoring
  • Status-Tracking für Ecodrive, Socialverse, Silvacore
  • Metriken-Erfassung (Fahrzeuge, Benutzer, WEGs, etc.)
  • API-Endpunkt für Produktstatus-Updates
  • Automatische Benachrichtigungen bei Limitüberschreitung
  • Consulting
  • Stundenbuchungssystem (70€/Stunde)
  • Historische Buchungsübersicht
  • Automatische Rechnung über Stripe
Security
  • HTTPS mit Let's Encrypt in Production
  • Session-basierte Authentifizierung mit Secure Cookies
  • 2FA mit TOTP (Google Authenticator, Authy)
  • Passkey-Support via WebAuthn
  • RBAC mit drei Rollen (Admin, Kundenbetreuer, Kunde)
  • CSRF-Protection auf allen Formularen
  • Rate Limiting für API-Endpunkte
  • Bcrypt für Passwort-Hashing
  • Sichere Session-Verwaltung mit Valkey
  • Input-Validierung und Sanitization
Testing
  • Backend Unit Tests mit Go Testing
  • Coverage-Reports mit go tool cover
  • E2E-Tests mit Playwright (TypeScript)
  • Frontend Unit Tests mit Vitest
  • Automatische Test-Ausführung in CI/CD
  • 100% Coverage-Ziel für kritische Komponenten

📋 Projektübersicht

Das Customer Portal ist eine zentrale Verwaltungsplattform für alle Waldheim-Produkte. Es ermöglicht die vollautomatische Verwaltung von Lizenzen, Abonnements, Support-Tickets und Produktstatus für Ecodrive (Fahrzeugkosten-Management), Socialverse (AI Social Media) und Silvacore (WEG-Verwaltung).

Kernfunktionen

  • Lizenzverwaltung: Automatische Generierung, Validierung und Verwaltung von Produktlizenzen
  • Stripe-Integration: Vollständige Zahlungs- und Abonnementverwaltung
  • Ticket-System: Dialog-basierter Support mit E-Mail-Benachrichtigungen
  • Multi-User-System: RBAC mit Admin, Kundenbetreuer und Kunden-Rollen
  • Produktmonitoring: Status-Tracking und Limit-Überwachung
  • Consulting: Stundenbuchungssystem für individuelle Dienstleistungen

🛠️ Technische Highlights

Backend-Architektur

  • Go 1.23 für Performance und Typsicherheit
  • Gin Framework für effizientes Routing
  • GORM als elegante ORM-Lösung
  • PostgreSQL 18 für zuverlässige Datenhaltung
  • Valkey 8 (Redis-Fork) für Sessions und Caching

Frontend-Ansatz

  • Server-Side Rendering mit Go Templates
  • HTMX für moderne Interaktivität ohne JavaScript-Overhead
  • TailwindCSS + DaisyUI für konsistentes Design
  • Alpine.js für clientseitige Logik

Sicherheit & Authentifizierung

  • Session-basierte Auth mit Secure Cookies
  • 2FA mit TOTP (Google Authenticator)
  • Passkey-Support via WebAuthn
  • CSRF-Protection und Rate Limiting

DevOps & Testing

  • Docker-basierte Containerisierung
  • Traefik mit Let’s Encrypt SSL
  • E2E-Tests mit Playwright
  • Unit Tests mit 100% Coverage-Ziel
  • GitLab CI/CD Pipeline

📊 Produktintegration

Das Portal verwaltet drei unterschiedliche Produkte mit jeweils eigenen Pricing-Modellen:

Ecodrive

Fahrzeugkosten-Management mit flexiblen Plänen von kostenlos bis Enterprise.

Socialverse

AI-gestütztes Social Media Management mit Pay-per-Use Option.

Silvacore

WEG-Verwaltungssoftware mit skalierbarem Storage-Modell.

🎯 Technische Herausforderungen & Lösungen

Challenge: Multi-Product-Lizenzierung

Lösung: UUID-basierte License Keys mit produktspezifischen Prefixes (z.B. ECODRIVE-XXXX-XXXX-XXXX-XXXX)

Challenge: Stripe-Synchronisation

Lösung: Webhook-basierte Event-Verarbeitung mit automatischer Lizenzverlängerung und Cron-Jobs für periodische Synchronisation

Challenge: Skalierbare Session-Verwaltung

Lösung: Valkey (Redis-Fork) als Session-Store mit automatischer Expiration

Challenge: E2E-Testing komplexer Flows

Lösung: Playwright-basierte Tests mit TypeScript für Payment-, Auth- und Ticket-Workflows

📈 Entwicklungsprozess

  • Projektdauer: Kontinuierliche Entwicklung seit 2025
  • Team: Solo-Entwicklung (Waldheim.dev)
  • Methodik: Agile Entwicklung mit GitLab Issues
  • Testing: Test-Driven Development mit 100% Coverage-Ziel
  • Deployment: Automatisiert via Docker Compose und GitLab CI/CD

🚀 Deployment & Infrastruktur

  • Production: Docker Compose mit Traefik Reverse Proxy
  • SSL: Automatisches Let’s Encrypt
  • Database: PostgreSQL 18 mit GORM Migrations
  • Caching: Valkey 8 für Sessions und Performance
  • Monitoring: Produktstatus-API für alle integrierten Produkte
  • Email: SMTP mit Mailhog für lokale Entwicklung

🔗 API-Dokumentation

Das Portal bietet REST-APIs für:

  • Lizenzvalidierung (für Produkt-Integration)
  • Produktstatus-Updates
  • Webhook-Verarbeitung (Stripe)
  • Swagger-Dokumentation unter /api/docs

📚 Lessons Learned

  • Go’s Typsicherheit reduziert Bugs erheblich im Vergleich zu dynamisch getypten Sprachen
  • HTMX ermöglicht moderne UX ohne komplexe Frontend-Frameworks
  • Server-Side Rendering vereinfacht Deployment und SEO
  • Stripe Webhooks erfordern sorgfältiges Error Handling und Idempotenz
  • E2E-Tests sind kritisch für Payment-Flows

🎓 Erkenntnisse & Best Practices

  • Strikte Trennung von Business Logic (Services) und HTTP Handlern
  • UUID-basierte Datenmodelle für bessere Skalierbarkeit
  • Environment-basierte Konfiguration mit Viper
  • Umfassendes Testing (Unit, Integration, E2E)
  • Docker Multi-Stage Builds für kleinere Images
  • Rate Limiting als First-Class Citizen

Status: In aktiver Entwicklung
Maintainer: Waldheim.dev Development
Lizenz: Proprietär
Kontakt: support@waldheim.dev

Assets

Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset Asset

Tags

Docker Go Gin Framework GORM PostgreSQL Valkey Redis HTMX TailwindCSS DaisyUI Stripe Traefik Playwright E2E-Testing Session-Auth 2FA Passkey WebAuthn RBAC License Management Ticketing Multi-Product SaaS Subscription Management GitLab CI Code-Security Clean Code REST API