Introduction
Docs is a self-hosted document editor designed for real-time collaboration with structured sub-documents and complete data ownership. Built by France's Suite Numerique initiative, it prioritizes sovereignty and privacy while delivering a modern editing experience comparable to commercial alternatives.
What Docs Does
- Provides a block-based rich text editor powered by BlockNote.js for intuitive document creation
- Enables real-time multi-user collaboration via Yjs CRDT synchronization
- Supports hierarchical document structures with linked sub-documents
- Offers user authentication through OpenID Connect and single sign-on
- Delivers a responsive interface that works across desktop and mobile browsers
Architecture Overview
Docs uses a Django backend paired with a React frontend. Real-time collaboration relies on Yjs, a CRDT library that handles conflict-free merging of concurrent edits without a central coordinator. The backend manages document storage in PostgreSQL, handles authentication via OIDC providers, and exposes a REST API. Static assets are served separately, and the stack runs behind a reverse proxy for production deployments.
Self-Hosting & Configuration
- Deploy using Docker Compose with provided configuration files
- Configure OpenID Connect provider credentials for authentication
- Set PostgreSQL connection parameters via environment variables
- Adjust allowed hosts and CORS settings for your domain
- Enable S3-compatible storage for media and file attachments
Key Features
- Block-based editor with slash commands, markdown shortcuts, and drag-and-drop
- Real-time presence indicators showing active collaborators
- Document versioning with history and restore capabilities
- Granular access control with role-based permissions
- MIT-licensed with backing from a government digital sovereignty program
Comparison with Similar Tools
- Outline — focuses on team knowledge bases with a tree structure; Docs emphasizes structured sub-documents and government-grade compliance
- HedgeDoc — Markdown-only collaborative editing; Docs provides a richer block editor
- Notion — proprietary with vendor lock-in; Docs is fully self-hosted and open-source
- Etherpad — lightweight real-time pad; Docs offers more structured document organization
FAQ
Q: What database does Docs require? A: PostgreSQL is the primary supported database for production use.
Q: Can I integrate Docs with my existing SSO? A: Yes, Docs supports OpenID Connect, making it compatible with Keycloak, Authentik, and other OIDC providers.
Q: Is Docs production-ready? A: It is actively used within French government agencies and receives regular updates and security patches.
Q: What languages does the interface support? A: The interface supports multiple languages including English and French, with community contributions for additional locales.