Overleaf is an open-source web-based editor designed for collaborative LaTeX document creation, enabling multiple users to edit and compile LaTeX projects in real time. It is ideal for academic teams, researchers, and students who need to co-author papers, theses, or technical reports without switching between local editors and version control. Built on a Dockerized architecture using Phusion Baseimage and runit, it supports both community and enterprise deployments with full TeXLive integration.
The platform is deployed via Docker containers with a split image structure: sharelatex/sharelatex-base for heavy TeXLive dependencies and sharelatex/sharelatex for the application layer. It supports on-premises installation and enterprise features like SSO via LDAP/SAML, tracked changes, and sandboxed compiles for security isolation.
What You Get
- Real-time collaborative editing - Multiple users can edit the same LaTeX document simultaneously with live cursor tracking and changes visible instantly.
- Full TeXLive integration - Pre-installed TeXLive distribution with comprehensive LaTeX packages, enabling compilation of complex academic documents without manual package installation.
- Docker-based deployment - Official Docker images (sharelatex/sharelatex-base and sharelatex/sharelatex) allow easy on-premises installation and scaling using Phusion Baseimage and runit service manager.
- Server Pro enterprise features - Includes SSO via LDAP/SAML, tracked changes, advanced admin controls, and sandboxed compiles for secure user isolation in enterprise environments.
- Sandboxed compiles (Server Pro only) - Isolates LaTeX compilation processes to prevent users from accessing filesystem, network, or environment variables of the host container.
- Overleaf Toolkit - Official installation and management tool with documented steps for deploying and upgrading Overleaf on-premises.
Common Use Cases
- Co-authoring academic papers - A research team uses Overleaf to collaboratively write and compile a journal paper with real-time editing, version history, and integrated bibliography management.
- University thesis collaboration - Graduate students and advisors use the on-premises Overleaf instance to review, comment on, and compile thesis drafts without relying on cloud services.
- Department-wide LaTeX standardization - A university IT department deploys Overleaf Server Pro to enforce consistent LaTeX templates and provide SSO access across all faculty and students.
- Secure research document sharing - A lab uses sandboxed compiles in Overleaf Server Pro to allow external collaborators to compile LaTeX documents without granting access to internal systems.
Under The Hood
Architecture
- Monorepo structure with workspace-based services that enforce clear separation of concerns and enable independent deployment and testing
- Service-layer design pattern applied across domain-specific microservices, each encapsulating focused business logic with well-defined interfaces
- Dependency injection and reusable modular libraries abstract core functionality, reducing duplication and improving maintainability
- TypeScript path aliases and strict compiler options enforce modular boundaries and prevent implicit cross-module dependencies
- Sandboxed compilation and Docker-based isolation ensure secure document processing by decoupling LaTeX execution from the main application
- Express-based web service integrates with internal services via clean APIs, maintaining separation between HTTP routing and domain logic
Tech Stack
- Node.js backend with Express powering a monorepo of interconnected microservices including real-time, docstore, and notifications
- MongoDB as the primary data store, complemented by Redis for caching and session management, accessed through custom utility wrappers
- Comprehensive Docker-based deployment using docker-compose to isolate services for compilation, file storage, and security-critical operations
- TypeScript with custom path aliases enables clean, modular code organization across services and shared libraries
- Rich tooling ecosystem including Prettier, ESLint with custom plugins, Vitest, and patch-package to maintain code consistency and reliability
- CI/CD pipelines supported by Jenkins and automated workflows for formatting, linting, and testing across diverse file formats
Code Quality
- Extensive test coverage spanning unit, integration, and end-to-end layers with robust mocking frameworks to isolate dependencies
- Consistent, domain-driven naming conventions and clear layering between services, UI components, and infrastructure
- Comprehensive error handling with custom error classes and structured logging, especially in critical paths like project history and git integration
- Strong type safety enforced throughout the codebase, with TypeScript used rigorously in both backend and frontend components
- Advanced testing infrastructure with Vitest and Mocha, integrated CI reporters, and structured test artifacts for traceability and regression detection
- Linting and test setup standardized with reusable utilities that promote DRY principles and uniform assertion patterns
What Makes It Unique
- Real-time collaborative editing powered by operational transformation, enabling seamless multi-user LaTeX authoring without locks
- Integrated LaTeX compilation pipeline with sandboxed execution that delivers near-instant feedback while preserving system security
- Seamless WYSIWYG and source editing modes that preserve semantic structure during live edits, not just raw text changes
- Unified membership and publisher management system that dynamically adapts templates and workflows per journal
- Multi-tenant content delivery with intelligent caching and asset fingerprinting serving diverse academic publishers from a single codebase
- Native localization layer that dynamically adapts UI and documentation based on user language without separate builds