DocumentServer
ONLYOFFICE Docs is a free collaborative online office suite comprising viewers and editors for texts, spreadsheets and presentations, forms and PDF, fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.
Top Related Projects
:cloud: ownCloud web server core (Files, DAV, etc.)
☁️ Nextcloud server, a safe home for all your data
:gem: A fast, open source text processor and publishing toolchain, written in Ruby, for converting AsciiDoc content to HTML 5, DocBook 5, and other formats.
Universal markup converter
A pure PHP library for reading and writing word processing documents
Quick Overview
ONLYOFFICE DocumentServer is an open-source office suite that allows users to create, view, and edit text documents, spreadsheets, and presentations in real-time collaboration. It provides a web-based interface and can be integrated into various platforms and applications.
Pros
- Supports real-time collaboration with multiple users
- Offers a wide range of document editing features comparable to desktop office suites
- Can be self-hosted for better control over data and privacy
- Provides API for easy integration with other applications
Cons
- Requires significant server resources for optimal performance
- Setup and configuration can be complex for non-technical users
- Some advanced features may require a paid license
- Limited mobile support compared to other office suites
Getting Started
To set up ONLYOFFICE DocumentServer:
-
Clone the repository:
git clone https://github.com/ONLYOFFICE/DocumentServer.git
-
Navigate to the project directory:
cd DocumentServer
-
Run the installation script:
bash installServer.sh
-
Access the DocumentServer through your web browser at
http://localhost:80
Note: These instructions are simplified. For a complete setup guide, refer to the official documentation in the repository.
Competitor Comparisons
:cloud: ownCloud web server core (Files, DAV, etc.)
Pros of ownCloud Core
- More comprehensive file management and sharing features
- Broader ecosystem with numerous apps and integrations
- Stronger focus on privacy and data sovereignty
Cons of ownCloud Core
- Less specialized for document editing and collaboration
- May require more setup and configuration for advanced features
- Potentially higher resource requirements for full functionality
Code Comparison
ownCloud Core (PHP):
public function getStorageInfo($dir = '') {
$storageInfo = $this->storage->getStorageInfo($dir);
$this->updateStorageStatistics($storageInfo);
return $storageInfo;
}
ONLYOFFICE DocumentServer (JavaScript):
function createDocumentEditor(docId, docType, options) {
var docEditor = new DocsAPI.DocEditor("placeholder", {
document: {
fileType: docType,
key: docId,
url: options.url
},
editorConfig: options.editorConfig
});
return docEditor;
}
The code snippets highlight the different focus areas of the two projects. ownCloud Core deals with storage management and file operations, while ONLYOFFICE DocumentServer is centered around document editing and collaboration features.
☁️ Nextcloud server, a safe home for all your data
Pros of Nextcloud server
- More comprehensive file sharing and collaboration platform
- Larger community and ecosystem of apps/plugins
- Self-hosted solution with greater control over data privacy
Cons of Nextcloud server
- More complex setup and maintenance
- Potentially higher resource requirements
- Less specialized for document editing compared to DocumentServer
Code comparison
DocumentServer (JavaScript):
this.api.asc_registerCallback('asc_onDocumentContentReady', function () {
this._onDocumentContentReady.apply(this, arguments);
});
Nextcloud server (PHP):
$this->registerHook('post_create', 'OCA\Files\Hooks\Listener', 'post_create');
$this->registerHook('post_update', 'OCA\Files\Hooks\Listener', 'post_update');
Both projects use different programming languages and architectures. DocumentServer focuses on document editing functionality, while Nextcloud server provides a broader range of features for file management and collaboration. The code snippets show how each project handles event callbacks, with DocumentServer using JavaScript for client-side interactions and Nextcloud server using PHP for server-side hooks.
:gem: A fast, open source text processor and publishing toolchain, written in Ruby, for converting AsciiDoc content to HTML 5, DocBook 5, and other formats.
Pros of Asciidoctor
- Lightweight and fast text-based document processing
- Supports multiple output formats (HTML, PDF, EPUB)
- Extensive customization options and extensibility
Cons of Asciidoctor
- Limited real-time collaboration features
- Lacks built-in WYSIWYG editing capabilities
- May require more technical knowledge for advanced usage
Code Comparison
Asciidoctor (Ruby):
require 'asciidoctor'
Asciidoctor.convert_file 'document.adoc', to_file: 'output.html', safe: :safe
DocumentServer (JavaScript):
const config = {
document: {
fileType: "docx",
key: "Khirz6zTPdfd7",
url: "https://example.com/url-to-example-document.docx"
},
documentType: "word"
};
new DocsAPI.DocEditor("placeholder", config);
Asciidoctor focuses on text-based document processing, while DocumentServer provides a full-featured online document editing experience. Asciidoctor is more suitable for developers and technical writers who prefer working with plain text, while DocumentServer caters to users who need collaborative, WYSIWYG editing capabilities for various document formats.
Universal markup converter
Pros of Pandoc
- Lightweight and versatile document conversion tool
- Supports a wide range of input and output formats
- Command-line interface allows for easy integration into scripts and workflows
Cons of Pandoc
- Limited collaborative editing capabilities
- Lacks real-time document rendering and preview features
- No built-in cloud storage or sharing options
Code Comparison
Pandoc (Haskell):
readDocx :: PandocMonad m => ReaderOptions -> B.ByteString -> m Pandoc
readDocx opts bytes = do
doc <- parseXml bytes
parseDocx opts $ fromDocument doc
DocumentServer (JavaScript):
DocEditor.prototype.asc_nativeCheckPdfRenderer = function(callback)
{
var api = window["AscDesktopEditor"];
if (api && api.IsSupportNativeViewer)
callback(api.IsSupportNativeViewer());
else
callback(false);
};
Pandoc is a command-line tool focused on document conversion, while DocumentServer is a full-featured collaborative document editing solution. Pandoc excels in flexibility and format support, making it ideal for automation and scripting. DocumentServer offers real-time collaboration, cloud integration, and a rich editing interface, but may be more complex to set up and use for simple conversion tasks.
A pure PHP library for reading and writing word processing documents
Pros of PHPWord
- Lightweight and focused specifically on Word document manipulation
- Easier integration for PHP-based projects
- More straightforward API for basic document operations
Cons of PHPWord
- Limited to Word documents, unlike DocumentServer's multi-format support
- Lacks real-time collaboration features
- No built-in web-based document editing interface
Code Comparison
PHPWord:
$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
$section->addText('Hello World!');
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('helloWorld.docx');
DocumentServer:
docEditor = new DocsAPI.DocEditor("placeholder", {
document: {
url: "https://example.com/url-to-example-document.docx"
},
documentType: "word",
editorConfig: {
mode: "edit"
}
});
While PHPWord focuses on server-side document creation and manipulation, DocumentServer provides a full-fledged web-based document editing experience with collaborative features. PHPWord is more suitable for generating documents programmatically, while DocumentServer offers a comprehensive solution for online document editing and collaboration.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Welcome to the ONLYOFFICE Docs repo!
ONLYOFFICE Docs* is a free collaborative online office suite comprising viewers and editors for texts, spreadsheets, presentations, forms, PDFs, and diagrams. It is fully compatible with Office Open XML formats (.docx, .xlsx, .pptx) and enables collaborative editing in real time.
ONLYOFFICE Docs can be used as a part of ONLYOFFICE DocSpace and ONLYOFFICE Workspace, or with third-party sync&share solutions (e.g. Odoo, Moodle, Nextcloud, ownCloud, Seafile, etc.) to enable collaborative editing within their interface.
ONLYOFFICE Docs is available in three tailored editions to suit your needs: Community, Enterprise, and Developer.
* Starting from version 6.0, Document Server is distributed under a new name - ONLYOFFICE Docs.
Features you'll love â¨
Take advantage of the powerful editors included in ONLYOFFICE Docs:
- ONLYOFFICE Document Editor
- ONLYOFFICE Spreadsheet Editor
- ONLYOFFICE Presentation Editor
- ONLYOFFICE Form Creator
- ONLYOFFICE PDF Editor
- ONLYOFFICE Diagram Viewer
The editors empower you to create, edit, save, and export text documents, spreadsheets, presentations, PDFs, create and fill out PDF forms, open diagrams, all while offering additional advanced features such as:
- Collaborative editing ð¤
- AI-powered assistants ð¤
- Reviewing ð
- Spell-checking ð
- Accessibility ð©âð»
- Scalable UI options (including dark mode ð)
- Security tools and services ð
Localization ð
ONLYOFFICE is constantly improving localization of the editors to make the suite accessible to all users, all over the world.
- Interface available in 46 languages
- RTL support
- Hieroglyph support ð´
Plugins ð§©
ONLYOFFICE Docs offer support for plugins allowing developers to add specific features to the editors that are not directly related to the OOXML format. For more information, see our API or visit the GitHub plugins repo.
Would like to explore the existing plugins in details? You are welcome to visit our Marketplace.
Components ð¦
ONLYOFFICE Docs contains the following components:
- server - the backend server software layer which is the base for all other components of ONLYOFFICE Docs.
- core - server core components of ONLYOFFICE Docs which enable the conversion between the most popular office document formats (DOC, DOCX, ODT, RTF, TXT, PDF, HTML, EPUB, XPS, DjVu, XLS, XLSX, ODS, CSV, PPT, PPTX, ODP).
- sdkjs - JavaScript SDK for the ONLYOFFICE Docs which contains API for all the included components client-side interaction.
- web-apps - the frontend for ONLYOFFICE Docs which builds the program interface and allows the user create, edit, save and export text, spreadsheet and presentation documents using the common interface of a document editor.
- dictionaries - the dictionaries of various languages used for spellchecking in ONLYOFFICE Docs.
ONLYOFFICE Docs editions
ONLYOFFICE offers different versions of its online document editors that can be deployed on your own servers.
ONLYOFFICE Docs (packaged as Document Server):
- Community Edition ð (
onlyoffice-documentserver
package) â Perfect for small teams and personal use. - Enterprise Edition ð¢ (
onlyoffice-documentserver-ee
package) â Designed for businesses with advanced features & support. - Developer Edition âï¸ (
onlyoffice-documentserver-de
package) â Designed for integrators who need to bring document editing to their app users.
The table below will help you to make the right choice.
Pricing and licensing | Community Edition | Enterprise Edition | Developer Edition |
---|---|---|---|
Get it now | Start Free Trial | Start Free Trial | |
Cost | FREE | Go to the pricing page | Go to the pricing page |
Simultaneous connections | up to 20 maximum | As in chosen pricing plan | As in chosen pricing plan |
Number of users | up to 20 recommended | As in chosen pricing plan | As in chosen pricing plan |
Clusterization | - | + | + |
License | GNU AGPL v.3 | Proprietary | Proprietary |
Support | Community Edition | Enterprise Edition | Developer Edition |
Documentation | Help Center | Help Center | Help Center |
Standard support | GitHub or paid | One or three years support included | One year support included |
Premium support | Contact Us | Contact Us | Contact Us |
Services | Community Edition | Enterprise Edition | Developer Edition |
Conversion Service | + | + | + |
Document Builder Service | + | + | + |
Interface | Community Edition | Enterprise Edition | Developer Edition |
Tabbed interface | + | + | + |
Dark theme | + | + | + |
125%, 150%, 175%, 200% scaling | + | + | + |
White label | - | - | + |
Integrated test example (node.js) | + | + | + |
Mobile web editors | - | +** | +** |
Plugins & Macros | Community Edition | Enterprise Edition | Developer Edition |
Plugins | + | + | + |
Macros | + | + | + |
Collaborative capabilities | Community Edition | Enterprise Edition | Developer Edition |
Two co-editing modes | + | + | + |
Comments | + | + | + |
Built-in chat | + | + | + |
Review and tracking changes | + | + | + |
Display modes of tracking changes | + | + | + |
Version history | + | + | + |
Document Editor features | Community Edition | Enterprise Edition | Developer Edition |
Font and paragraph formatting | + | + | + |
Object insertion | + | + | + |
Adding Content control | + | + | + |
Editing Content control | + | + | + |
Layout tools | + | + | + |
Table of contents | + | + | + |
Navigation panel | + | + | + |
Mail Merge | + | + | + |
Comparing Documents | + | + | + |
Spreadsheet Editor features | Community Edition | Enterprise Edition | Developer Edition |
Font and paragraph formatting | + | + | + |
Object insertion | + | + | + |
Functions, formulas, equations | + | + | + |
Table templates | + | + | + |
Pivot tables | + | + | + |
Data validation | + | + | + |
Conditional formatting | + | + | + |
Sparklines | + | + | + |
Sheet Views | + | + | + |
Presentation Editor features | Community Edition | Enterprise Edition | Developer Edition |
Font and paragraph formatting | + | + | + |
Object insertion | + | + | + |
Transitions | + | + | + |
Animations | + | + | + |
Presenter mode | + | + | + |
Notes | + | + | + |
Slide Master | + | + | + |
Form creator features | Community Edition | Enterprise Edition | Developer Edition |
Adding form fields | + | + | + |
Form preview | + | + | + |
Saving as PDF | + | + | + |
Role-matching colors for fields | + | + | + |
PDF Editor features | Community Edition | Enterprise Edition | Developer Edition |
Text editing and co-editing | + | + | + |
Work with pages (adding, deleting, rotating) | + | + | + |
Inserting objects (shapes, images, hyperlinks, etc.) | + | + | + |
Text annotations (highlight, underline, cross out, stamps) | + | + | + |
Comments | + | + | + |
Freehand drawings | + | + | + |
Form filling | + | + | + |
Security features | Community Edition | Enterprise Edition | Developer Edition |
End-to-end encryption via Private Rooms*** | + | + | - |
Get it now | Start Free Trial | Start Free Trial |
** If supported by DMS
*** End-to-end encryption via Private Rooms requires ONLYOFFICE Workspace
ð Get started: How to install on a local server
The easiest way to install ONLYOFFICE Docs is to use the Docker image ð Check the official source code
Explore these step-by-step guides:
- Installing ONLYOFFICE Docs Docker
- Installing ONLYOFFICE Docs for Linux
- Installing ONLYOFFICE Docs for Windows
How to build ð
You can find the detailed instructions for building ONLYOFFICE Docs on a local server from source code in our Help Center.
License ð
ONLYOFFICE Docs is licensed under the GNU Affero Public License, version 3.0, ensuring its transparency and commitment to the open-source community.
See LICENSE for more information.
ð¡ Need help? User Feedback and Support
If you face any issues or have questions about ONLYOFFICE Docs, please visit our official forum:Â forum.onlyoffice.com.
You are also welcome to ask and answer ONLYOFFICE development questions on Stack Overflow, as well as share your thoughts and suggestions on feedback.onlyoffice.com.
Join our Discord community for connecting with fellow developers.
Collaborate better with ONLYOFFICE Docs! ð
Top Related Projects
:cloud: ownCloud web server core (Files, DAV, etc.)
☁️ Nextcloud server, a safe home for all your data
:gem: A fast, open source text processor and publishing toolchain, written in Ruby, for converting AsciiDoc content to HTML 5, DocBook 5, and other formats.
Universal markup converter
A pure PHP library for reading and writing word processing documents
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot