DocFX vs Sphinx
DocFX
dotnet.github.ioSphinx
sphinx-doc.orgSide by side
| Figure | DocFX | Sphinx |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Documentation Generators | 8.2 (#6) | 8.2 (#7) |
| Spec score · Technical Documentation Software | 8.2 (#12) | 8.1 (#18) |
| Spec score · Technical Writing Platforms | 8.3 (#9) | 8.1 (#16) |
| Spec score · Developer Documentation Software | 8.2 (#11) | 8.2 (#12) |
| Spec score · Knowledge base software | 7.7 (#102) | 8.2 (#61) |
| API documentation | DocFX generates .NET API documentation by converting XML documentation comments into rendered HTML documentation. | Automatic API documentation can be generated from docstrings for Python, C++ and other software domains. |
| Free plan | Yes | Yes |
| Purpose | DocFX builds technical documentation sites from .NET assemblies, XML code comments, REST API Swagger files, and Markdown. | Sphinx generates technical documentation from structured text. |
| Support | The DocFX project is listed as supported by the .NET Foundation. | The project directs users to Stack Overflow, GitHub Discussions, GitHub Issues, or the sphinx-users mailing list for questions and problem reports. |
Plans
In their own words
DocFX
DocFX is a free static site generator for technical documentation. It builds documentation from .NET assemblies, XML code comments, REST API Swagger files and Markdown, and can produce rendered HTML pages, JSON models or PDFs. Static HTML output is placed in the `_site` folder for publication to hosting services such as GitHub Pages. DocFX can also be used as a NuGet library through the `Docfx.App` package and .NET APIs. It parses CommonMark-compliant Markdown with Markdig and supports additional extensions. Built-in templates include a modern option with dark mode and customization settings; users can also customize templates with CSS, JavaScript, Mustache templates and metadata. DocFX can generate git links for GitHub, GitLab, Azure Pipelines, AppVeyor, TeamCity and Jenkins. It requires .NET SDK 8.0 or higher. Node.js v20 or higher is optional generally, but required to create PDFs. Native reference documentation generation covers .NET and REST APIs; other languages need a custom API docs converter. PlantUML diagrams use a remote server by default, with local rendering available as a setting.
Sphinx
Sphinx is a free Python application that generates technical documentation from structured text. Authors can use reStructuredText or MyST Markdown; Markdown requires installing MyST-Parser separately. Built-in builders produce HTML, LaTeX for PDF, ePub, manual pages, Texinfo, and plain text. References can link sections, figures, tables, citations, glossaries, and code objects within one project or across projects. The autodoc extension imports documented modules and includes material from their docstrings. Themes and extensions, both built-in and third-party, add options such as diagrams, doctests, and API documentation. Other built-in extensions provide GitHub Pages publishing, Graphviz graphs, and intersphinx links. Sphinx also supports gettext-based translation and full-text search. It can be installed through Python and platform package managers, Docker, or from source, then deployed to services such as Read the Docs, GitHub Pages, GitLab Pages, Netlify, or self-hosted servers. Its code is released under the two-clause BSD license, and the project is community supported.