writelite
|

Sicherheit & Datenschutz bei Writelite

Stand: März 2026

Deine Texte gehören dir. Diese Seite erklärt, wie Writelite dafür gebaut ist – und was mit deinen Texten passiert (und was nicht), wenn du KI-Funktionen oder Cloud-Sync nutzt. Wir haben versucht, das für jemanden zu schreiben, dem die technischen Details wichtig sind, nicht nur das rechtliche Kleingedruckte.


1. Deine Dokumente bleiben auf deinem Gerät – standardmäßig

Writelite folgt dem Local-First-Prinzip: Deine Projekte werden in der lokalen Datenbank deines Browsers (IndexedDB) auf deinem eigenen Gerät gespeichert. Nichts verlässt dein Gerät, solange du das nicht ausdrücklich möchtest.

Das bedeutet konkret:

  • Kein Account nötig, um zu schreiben und zu speichern
  • Keine automatischen Uploads im Hintergrund
  • Kein Server sieht deine Texte, wenn du das nicht willst

Daten im lokalen Browser-Speicher sind an dein Gerät, deinen Browser und die Ursprungs-URL (https://writelite.app) gebunden. Ein anderer Browser auf demselben Computer sieht nichts. Eine andere Person auf einem anderen Gerät sieht nichts.


2. Cloud-Sync ist opt-in – pro Projekt

Wenn du deine Texte geräte- oder browserübergreifend nutzen möchtest, bietet Writelite optionalen Cloud-Sync. Die entscheidende Design-Entscheidung: Du wählst pro Projekt, nicht global.

Das bedeutet: Sensible Entwürfe bleiben rein lokal, weniger kritische Projekte kannst du für mehr Komfort synchronisieren. Die Wahl liegt bei dir – Projekt für Projekt.

Wenn Cloud-Sync für ein Projekt aktiviert ist, werden die Daten auf unserem Server gespeichert (PostgreSQL, gehostet in der EU). Die Synchronisation läuft im Hintergrund nach einem timestamp-basierten Protokoll – es werden nur Änderungen übertragen, nicht deine gesamte Projektbibliothek.


3. Tenant-Trennung: Deine Cloud-Daten sind isoliert

Wenn Daten auf unserem Server gespeichert werden, sind sie strikt pro Nutzerkonto isoliert. Jedes Projekt in der Datenbank trägt deine eindeutige Nutzer-ID (abgeleitet aus deinem Google-Login), und unsere API erzwingt eine harte Regel: Jede Datenbankabfrage filtert nach deiner Nutzer-ID. Es gibt keinen Abfragepfad, der Daten eines anderen Nutzers zurückliefern könnte.

Deine Anfrage → Node.js API → SQL-Abfrage mit WHERE user_id = DEINE_ID → Nur deine Daten

Dieses Muster nennt sich logische Tenant-Trennung – ein Standardansatz für Multi-User-SaaS-Anwendungen, bei dem die Daten jedes Nutzers innerhalb einer gemeinsam genutzten Datenbank vollständig isoliert sind. PostgreSQL erzwingt dies auf Abfrageebene – es ist keine reine Anwendungslogik. Weiterführende Informationen: OWASP Multi-Tenancy Cheat Sheet.

Der PostgreSQL-Server selbst ist nicht aus dem Internet erreichbar – nur unser eigenes Node.js-Backend kommuniziert intern mit ihm.


4. KI-Funktionen: flüchtig und ausschnittsweise

Writelite nutzt KI-Dienste (Anthropic Claude für Textassistenz, OpenAI für weitere Sprachfunktionen, Deepgram für Spracheingabe/Diktat), um Schreibassistenz bereitzustellen. Hier ist genau, was mit deinen Texten dabei passiert:

Nur was du aktiv einreichst, wird gesendet. KI-Funktionen werden durch explizite Nutzeraktionen ausgelöst (z. B. Klick auf „Diesen Absatz verbessern"). Writelite überträgt deine Texte nicht passiv im Hintergrund an KI-Dienste.

Nur der relevante Ausschnitt wird übertragen. Wenn du eine KI-Funktion aufrufst, wird nur der markierte Text oder der aktive Absatz gesendet – nicht dein gesamtes Projekt oder deine Dokumentenhistorie.

Kein Training mit deinen Daten. Wir nutzen die API-Schnittstellen unserer KI-Anbieter, nicht deren Consumer-Produkte. Die API-Nutzung unterliegt vertraglichen Datenverarbeitungsbedingungen, die es den Anbietern untersagen, eingereichte Inhalte zum Training von KI-Modellen zu verwenden. Weitere Informationen:

Flüchtige Verarbeitung. Die KI-Anbieter verarbeiten deinen Text, um eine Antwort zu erzeugen, und speichern ihn nicht dauerhaft über das hinaus, was ihre eigenen Datenaufbewahrungsrichtlinien vorsehen (in der Regel kurzfristig nur zu Debugging-Zwecken). Dein Text wird nicht indiziert, ist nicht durchsuchbar und wird nicht als Datensatz gespeichert.

Stell es dir so vor: Du bittest einen sehr fähigen Berater, auf einen bestimmten Ausschnitt zu reagieren, den du ihm zeigst. Er bekommt nicht dein Notizbuch – er bekommt die Seite, die du ihm hinreichst, und das nur für die Dauer des Gesprächs.


5. Verschlüsselung der Übertragung

Die gesamte Kommunikation zwischen deinem Browser und writelite.app wird über TLS 1.2 / 1.3 (HTTPS) verschlüsselt. Verbindungen über unverschlüsseltes HTTP werden nicht akzeptiert. Das gilt sowohl für die Anwendung als auch für API- und Sync-Datenverkehr.

Du kannst das jederzeit über das Schloss-Symbol in deinem Browser überprüfen oder mit Tools wie SSL Labs.


6. Authentifizierung: Wir speichern dein Passwort nicht

Writelite verwendet ausschließlich Google Sign-In (OAuth 2.0). Das bedeutet:

  • Wir sehen oder speichern dein Passwort zu keinem Zeitpunkt
  • Die Authentifizierung liegt vollständig in Googles Infrastruktur
  • Wir erhalten nach deiner Einwilligung nur einen begrenzten Satz Profildaten (Name, E-Mail, Google-Nutzer-ID)
  • Du kannst Writelites Zugriff auf dein Google-Konto jederzeit unter Google-Konto-Berechtigungen widerrufen

Sessions werden über sichere, HTTP-only-Cookies mit angemessenen Ablaufzeiten verwaltet, gemäß den Best Practices des OWASP Session Management Cheat Sheet.


7. Unsere Sicherheitsgrundsätze

Wir orientieren unsere Entwicklungs- und Infrastrukturpraktiken an etablierten Sicherheitsrahmenwerken, insbesondere:

  • OWASP Top 10 – die Standardreferenz für häufige Webanwendungs-Schwachstellen (Injection, fehlerhafte Zugriffskontrollen usw.)
  • BSI IT-Grundschutz – der Grundschutzkatalog des Bundesamts für Sicherheit in der Informationstechnik

Konkret bedeutet das:

  • Eingabevalidierung und parametrisierte Datenbankabfragen durchgängig (kein SQL-Injection-Angriffspunkt)
  • Regelmäßige Dependency-Updates und Schwachstellen-Scans als Teil des Entwicklungsprozesses
  • Minimale Datenhaltung – wir speichern nur, was für den Betrieb des Dienstes notwendig ist
  • Keine Werbeskripte, Tracking-Pixel oder Analytics-SDKs von Drittanbietern im Client

8. Export und Löschung

Du behältst jederzeit die Kontrolle über deine Daten:

  • Export: Du kannst jedes Projekt jederzeit als Markdown-Datei (.md) exportieren – von jedem Gerät, auch ohne Account.
  • Konto löschen: Die Löschung deines Kontos entfernt alle cloud-synchronisierten Daten innerhalb von 30 Tagen von unseren Servern. Lokale Daten (in der IndexedDB deines Browsers) verbleiben auf deinem Gerät und können über die Browser-Einstellungen gelöscht werden.

9. Responsible Disclosure

Wenn du eine Sicherheitslücke in Writelite entdeckst, würden wir uns über eine vertrauliche Meldung vor einer öffentlichen Veröffentlichung freuen. Bitte schreib uns an mail@writelite.de mit einer Beschreibung des Problems. Wir bemühen uns, innerhalb von 48 Stunden zu antworten, und stimmen mit dir einen angemessenen Disclosure-Zeitplan ab.


Writelite wird von einer Person gebaut, die selbst schreibt – und die genauso wenig möchte, dass ihre eigenen Entwürfe nach außen dringen. Die architektonischen Entscheidungen auf dieser Seite sind keine bloße Richtlinie; sie sind das tatsächliche Design.

Security & Data Protection at Writelite

Last updated: March 2026

Your writing is yours. This page explains how Writelite is designed to keep it that way – and what happens (and doesn't happen) to your texts when you use AI features or cloud sync. We've tried to write this for someone who cares about the technical details, not just the legal boilerplate.


1. Your Documents Stay on Your Device – by Default

Writelite is built on a local-first principle: your projects are stored in your browser's local database (IndexedDB) on your own device. Nothing leaves your machine unless you explicitly choose otherwise.

This means:

  • No account required to write and save
  • No automatic uploads in the background
  • No server sees your text if you don't want it to

If your browser's local storage holds your data, only you can access it – it's bound to your device, your browser, and your origin URL (https://writelite.app). A different browser on the same computer sees nothing. Another person on another device sees nothing.


2. Cloud Sync is Opt-In, Per Project

If you want to access your writing across multiple devices or browsers, Writelite offers optional cloud sync. The key design decision: you choose per project, not globally.

This means you can keep sensitive drafts purely local while syncing less critical projects to the cloud for convenience. The choice is yours, project by project.

When cloud sync is enabled for a project, your data is stored on our server (PostgreSQL, hosted in the EU). The sync runs in the background using a timestamp-based protocol – only changes are transmitted, not your entire document library.


3. Tenant Separation: Your Cloud Data is Isolated

When data is stored on our server, it is strictly isolated per user account. Every project in the database carries your unique user ID (derived from your Google login), and our API enforces a hard rule: every query filters by your user ID. There is no query path that can return another user's data.

Your request → Node.js API → SQL query with WHERE user_id = YOUR_ID → Your data only

This is sometimes called logical tenant separation – a standard approach for multi-user SaaS applications where each user's data is siloed within a shared database. PostgreSQL enforces this at the query level; it is not just an application-layer check. For further reading on this pattern: OWASP Multi-Tenancy Cheat Sheet.

The PostgreSQL server itself is not accessible from the internet – only our own Node.js backend communicates with it internally.


4. AI Features: Transient and Scoped

Writelite uses AI services (Anthropic Claude for text assistance, OpenAI for additional language features, Deepgram for voice/dictation) to power its writing assistance. Here is exactly how your text is handled:

Only what you actively submit is sent. AI features are triggered by explicit user actions (e.g. clicking "improve this paragraph"). Writelite does not passively stream your writing to any AI service in the background.

Only the relevant excerpt is transmitted. When you invoke an AI feature, only the selected text or the paragraph in focus is sent – not your entire project or document history.

No training on your data. We use the API interfaces of our AI providers, not their consumer products. API usage is subject to contractual data processing terms that prohibit using submitted content to train AI models. See:

Transient processing. The AI providers process your text to generate a response and do not persistently store it beyond what their own data retention policies specify (typically short-term for debugging purposes only). Your text is not indexed, searchable, or retained as a corpus.

Think of it this way: you're asking a very capable consultant to react to a specific excerpt you hand them. They don't get your notebook – they get the page you're showing them, and only for the duration of the conversation.


5. Encryption in Transit

All communication between your browser and writelite.app is encrypted via TLS 1.2 / 1.3 (HTTPS). Connections over plain HTTP are not accepted. This applies to both the application and any API or sync traffic.

You can verify this at any time via your browser's lock icon, or using tools like SSL Labs.


6. Authentication: We Don't Store Your Password

Writelite uses Google Sign-In (OAuth 2.0) exclusively. This means:

  • We never see or store your password
  • Authentication is handled entirely by Google's infrastructure
  • We receive only a limited set of profile data (name, email, Google user ID) after you grant consent
  • You can revoke Writelite's access to your Google account at any time via Google Account Permissions

Sessions are managed via secure, HTTP-only cookies with appropriate expiry times, following OWASP Session Management best practices.


7. Our Security Principles

We orient our development and infrastructure practices along established security frameworks, in particular:

  • OWASP Top 10 – the standard reference for common web application vulnerabilities (injection, broken access control, etc.)
  • BSI IT-Grundschutz – the German Federal Office for Information Security baseline catalogue

Concretely, this means:

  • Input validation and parameterised queries throughout (no SQL injection surface)
  • Dependency updates and vulnerability scanning as part of the development workflow
  • Minimal data collection – we only store what is necessary to provide the service
  • No third-party advertising scripts, tracking pixels, or analytics SDKs loaded client-side

8. Export and Deletion

You are always in control of your data:

  • Export: You can export any project as a Markdown (.md) file at any time, from any device, without needing an account.
  • Account deletion: Deleting your account removes all cloud-synced data from our servers within 30 days. Local data (in your browser's IndexedDB) remains on your device and can be cleared via your browser settings.

9. Responsible Disclosure

If you discover a security vulnerability in Writelite, we'd appreciate a heads-up before public disclosure. Please contact us at mail@writelite.de with a description of the issue. We aim to respond within 48 hours and will work with you on a reasonable disclosure timeline.


Writelite is built by one person who also writes – and who would be equally unhappy about his own drafts leaking. The architectural choices on this page are not just policy; they're the actual design.