Ausgangslage
Webdesigner und kleine Agenturen verlieren die meiste Zeit nicht am Design, sondern am Einsammeln von Material: Logos, Texte, Zugänge, Pflichtangaben, Freigaben. Generische Formular-Tools passen nicht zum Webdesign-Workflow und sind den Kunden zu sperrig.
Lösung
Ein Multi-Tenant-Portal mit gehashten, zeitlich begrenzten Tokens (kein Kunden-Login), webdesign-spezifischen Briefing-Vorlagen und einer „Was fehlt noch?"-Checkliste. Uploads werden per Magic-Byte geprüft, am Ende steht ein Entwickler-Export als ZIP (Assets, JSON und Markdown-Brief). DSGVO-Felder, EU-Hosting und RLS auf jeder Tabelle sind von Tag eins eingebaut.
Im Kern
Ohne Login
Der Kunde öffnet einen Link — kein Account, keine Hürde. Der Token ist gehasht, zeitlich begrenzt und rate-limited.
Briefing-Vorlagen
Landingpage, Webshop, Relaunch, Branding — echte Webdesign-Templates statt generischer Formulare.
Dev-Handoff-Export
ZIP mit Assets, strukturiertem JSON und Markdown-Brief — direkt übergabefertig für die Entwicklung.
DSGVO-fertig
Pflichtangaben-Erfassung, EU-Hosting in Frankfurt und Daten-Export nach Art. 20.
Code-Einblick
// Kein Login: Zugriff per gehashtem, zeitlich begrenztem Token export async function lookupPortalToken(rawToken: string, ip: string) { await checkRateLimit(hashIp(ip)) // 1. Rate-Limit pro IP const tokenHash = sha256(rawToken) // 2. nur den Hash halten const token = await db.portalToken.find({ tokenHash }) if (!token || token.revoked) return null // 3. widerrufen? if (token.expiresAt < Date.now()) return null // 4. abgelaufen? await logEvent('viewed', { ipHash: hashIp(ip) }) // 5. Audit-Trail return token // 6. Zugriff gewähren }
Tech-Stack
Ergebnis
Live unter cluein.me — vom Briefing bis zur Freigabe in einem DSGVO-konformen Portal, ohne dass der Kunde je einen Account braucht.