weblo

MBVon Malte Budig
weblo – Startseite mit Video-Call, Journal und Chat

weblo ist eine plattformübergreifende App (Mobile, Desktop, Web), in der zwei Menschen einen gemeinsamen, privaten Raum teilen: ein kollaboratives Journal mit Echtzeit-Canvas (Yjs/Hocuspocus), Chat und Video-Calls (WebRTC). Vor allem für Paare gedacht. Backend mit Hono, Drizzle und Turso, self-hostbar.

weblo: Ein geteilter Raum für zwei – über Mobile, Desktop und Web

weblo ist eine plattformübergreifende App, in der zwei Menschen einen gemeinsamen, privaten Raum teilen: ein kollaboratives Journal, einen Chat und Video-Calls – synchron auf Mobile, Desktop und im Web. Gedacht ist der Raum vor allem für Paare.

weblo Startseite Die Startseite: Schnellzugriff auf Video-Call, Journal und Chat

Meine Rolle

Solo-Projekt von Ende zu Ende – Produkt, Architektur, das plattformübergreifende Frontend (Expo, Electron, Web) und das self-hostbare Backend mit Echtzeit-Synchronisation.

Was weblo macht

  • Gemeinsames Journal mit kollaborativem Canvas, den beide in Echtzeit bearbeiten
  • Chat zwischen den beiden Personen
  • Video-Calls direkt im geteilten Raum (WebRTC)
  • Partnership-Modell – ein privater Raum, der genau zwei Personen verbindet (Haupt-Use-Case: Paare)
  • Mehrsprachig (Deutsch, Englisch, Japanisch) und mit Hell-/Dunkel-Theme

weblo Video-Call Video-Call-Ansicht mit den Anrufsteuerungen

weblo Konto erstellen Onboarding: Konto erstellen und mit dem Partner verbinden

Technische Herausforderungen

  • Echtzeit-Kollaboration – der gemeinsame Canvas und die Journal-Dokumente werden über Yjs (CRDT) und einen Hocuspocus-WebSocket-Server synchronisiert, damit die Änderungen beider Seiten konvergieren – auch offline und bei Reconnects.
  • Ein Produkt, drei Plattformen – eine gemeinsame TypeScript-Basis für die Expo-Mobile-App, die Electron-Desktop-App und das Web, ohne die Codebasis zu dreiteilen.
  • Self-hostbares Backend – Hono-Server (Bun) mit Drizzle/Turso, Datei-Uploads über MinIO und Authentifizierung via Better Auth.

Tech-Stack

  • Frontend: React, React Native (Expo), Electron, TanStack Router, Tailwind, shadcn/ui
  • Backend: Hono (Bun), Drizzle ORM, SQLite/Turso, Better Auth, MinIO
  • Realtime: Yjs (CRDT) + Hocuspocus über WebSockets, Video-Calls über WebRTC
  • Monorepo: Turborepo, plus eine Astro-/Starlight-Doku

Status

weblo ist ein funktionierender Prototyp und aktuell pausiert. Eine Live-Version steht unter weblo-webapp.vercel.app.