Skip to content

Commit f8af504

Browse files
committed
Add a 2025 vision post
This tries to tie together the product that we've been building, and explains it to the community. I'm not 100% sure this is the best format for this, but I think it's important that we have this written down somewhere, and tried to do a reasonable good first version.
1 parent d36c749 commit f8af504

File tree

3 files changed

+99
-0
lines changed

3 files changed

+99
-0
lines changed

content/images/2025-vision.jpg

325 KB
Loading

content/posts/2025-vision.md

+97
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
title: Read the Docs 2025 Vision: first class support for all documentation tools
2+
date: 2025-01-01
3+
description: Our vision for Read the Docs in 2025, supporting all documentation tools and enhancing frontend features with Addons.
4+
category: Meta
5+
tags: addons, vision, builders
6+
authors: Eric Holscher
7+
status: published
8+
image: /images/2025-vision.jpg
9+
image_credit: Photo by <a href="https://unsplash.com/@mcnoble?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Matt Noble</a> on <a href="https://unsplash.com/photos/selective-focus-photo-of-silver-tower-viewer-telescope-facing-sunshine-BpTMNN9JSmQ?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Unsplash</a>
10+
11+
As we look forward to 2025,
12+
we took some time to reflect on where we've been and where we're going,
13+
and wanted to share that you with you.
14+
15+
**Our vision for Read the Docs is to be the best place to host software documentation using a docs as code approach**.
16+
This means that we're building on top of Git,
17+
and providing features that make sense for software documentation.
18+
19+
**Our product philosophy is to provide a great default experience but allow users to customize and extend as needed.**
20+
This means that we provide a set of features that work for most projects,
21+
but then allow you to extend or replace them as needed.
22+
23+
Below is a breakdown of how that plays out with each of the major parts of Read the Docs.
24+
25+
## Major steps in 2024
26+
27+
We've been working to expand build support beyond Sphinx and Mkdocs,
28+
and build Addons for powerful frontend features that work on any tool.
29+
30+
The major steps here have been:
31+
32+
* **Fully redesigned dashboard:** We've been working on a [new dashboard](https://about.readthedocs.com/blog/2024/11/rollout-of-our-new-dashboard/) that brings our site into the modern era. This has been fully rolled out to all users as default, and we're continuing to improve it.
33+
* **Removing build magic:** Removing the injection of data or configuration into your documentation builds. We used to have a full Sphinx extension that we injected, and a lot of configuration file manipulation for both [Sphinx](https://about.readthedocs.com/blog/2024/07/addons-by-default/) and [MkDocs](https://about.readthedocs.com/blog/2024/03/mkdocs-yaml-manipulation/). This has been removed, which means builds should happen exactly as they do locally.
34+
* **Adding build support for all tools:** We built support into our build system for [fully custom builds](https://blog.readthedocs.com/build-customization/), which allows any build process that outputs HTML to be hosted on Read the Docs.
35+
* **Adding frontend support for all tools:** to We rebuilt our Flyout and javascript that is injected into your documentation builds as a set of [Read the Docs Addons](https://about.readthedocs.com/blog/2024/04/enable-beta-addons/). This enables granular configuration
36+
* **Supporting custom integrations:** We're exposing all the data that we use to build Addons to documentation users, who can build [custom data integrations](https://docs.readthedocs.io/en/stable/flyout-menu.html#custom-event-integration). This allows you to integrate the versions from the API into a version selector, offline formats into a download UI, and provide a integrated UX for your users.
37+
38+
The combination of all this work leads to a powerful place for Read the Docs in 2025.
39+
We can support any documentation tool,
40+
and then provide a powerful set of Addons to provide a great UX on top,
41+
and allow you to build custom integrations to make everything work together perfectly.
42+
43+
## Our build system is more flexible than ever
44+
45+
All parts of Read the Docs have a default experience,
46+
but then allow you to customize and extend as needed.
47+
48+
With our build system,
49+
we recommend starting with ``build.jobs`` to get a simple build working:
50+
51+
* Our [build process](https://docs.readthedocs.io/en/stable/builds.html) defines a set of jobs that run in sequence to build your documentation.
52+
* You can [extend the build process](https://docs.readthedocs.io/en/stable/build-customization.html#extend-the-build-process) by adding ``pre`` and ``post`` jobs to run before and after the main build.
53+
<!-- This isn't fully implemented yet, but it's coming soon: https://github.com/readthedocs/readthedocs.org/pull/11810 -->
54+
* You can [override the ``build.jobs``](https://docs.readthedocs.io/en/stable/config-file/v2.html#build-jobs) to fully customize the build process.
55+
* If you don't want to use our build process at all, you can [run a fully custom build](https://docs.readthedocs.io/en/stable/build-customization.html#override-the-build-process) with ``build.commands``, allowing you to bring an existing build process to Read the Docs.
56+
57+
This gives users an onramp into a simple build process,
58+
but allows advanced users to fully customize their build process as needed.
59+
60+
## Addons make reading docs even better
61+
62+
Addons give you a set of features that are enabled by default,
63+
but you can always choose to extend them or replace them fully.
64+
65+
We're excited about the Addons we've already built:
66+
67+
* [Visual diff](https://docs.readthedocs.io/en/stable/visual-diff.html) to see changes between versions of your documentation in the rendered HTML. This builds on top of [pull request previews](https://docs.readthedocs.io/en/stable/pull-requests.html) to give you a full suite of tools for reviewing documentation changes.
68+
* [Link previews](https://docs.readthedocs.io/en/stable/link-previews.html) to make browsing your docs easier for users, and improving the UX of link-heavy documentation like API references.
69+
* [Flyout menu](https://docs.readthedocs.io/en/stable/flyout-menu.html) that provides users access to many Read the Docs features like search, versions, offline formats, and more.
70+
* [Search as you type](https://docs.readthedocs.io/en/stable/server-side-search/index.html) that is powered by [Elasticsearch](https://www.elastic.co/elasticsearch/) and allows searching multiple subprojects at once.
71+
* [Traffic analytics](https://docs.readthedocs.io/en/stable/traffic-analytics.html) to understand how your documentation is being used, and where you can improve it.
72+
* [Notifications](https://docs.readthedocs.io/en/stable/doc-notifications.html) to alert users to out of date documentation, and other important information about their documentation builds.
73+
74+
We have some more interesting ideas for additional Addons, like a [Command Pallette](https://github.com/readthedocs/addons/pull/449) to expose all of the features of Read the Docs in a single searchable interface.
75+
76+
### Integrate our data for a better UX
77+
78+
With our [custom event integration](https://docs.readthedocs.io/en/stable/flyout-menu.html#custom-event-integration),
79+
you can always integrate the data provided by Read the Docs into your documentation.
80+
81+
Some neat examples of what folks have been building:
82+
83+
* Version selectors that uses the API to show the latest versions of your documentation.
84+
* Offline formats that use the API to show the latest PDF or Epub downloads.
85+
* Search integrations that use the API to power a custom search interface.
86+
87+
You can see an [integration example](https://test-builds.readthedocs.io/en/latest/) that shows how to use the API to build a custom version selector.
88+
89+
We're excited to see what you build with this data,
90+
and are always looking for feedback on how we can make it better.
91+
92+
## Continuing to improve
93+
94+
This has been a long time coming,
95+
and we're excited to be coming into 2025 with a powerful set of features that work for all documentation tools.
96+
You can always [reach out](https://docs.readthedocs.io/en/stable/support.html) to us with feedback,
97+
and we're excited to see what you build!

readthedocs_theme/templates/category.html

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
{% extends "index.html" %}
22

3+
{% block title%} Post category: {{ category }} - Read the Docs {% endblock %}
4+
35
{% block content_breadcrumbs %}
46
<div class="ui breadcrumb">
57
<a class="section" href="/">Home</a>

0 commit comments

Comments
 (0)