From 2bd4f7666960c57e0886239a5ba8d60ae7ada4d1 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 14 Apr 2026 07:13:09 +0000 Subject: [PATCH 1/4] Revamp homepage around the "documentation infrastructure layer" narrative Reorganize the homepage hierarchy so it leads with a clear positioning statement, two explicit audience paths (engineering teams vs open source), narrative-first value props, a named customer quote, a stated position on AI/LLMs, and trust signals (scale stats + 15 years in production). Features are demoted to layer-3 proof below the fold. Adds a small #homepage CSS scope for hero fineprint and the scale strip. https://claude.ai/code/session_01Xq2jGSBae9jxVwb6HzpDWt --- content/pages/homepage.html | 437 ++++++++++++------ .../themes/rtd-site/globals/site.overrides | 41 ++ 2 files changed, 335 insertions(+), 143 deletions(-) diff --git a/content/pages/homepage.html b/content/pages/homepage.html index b46ba50d..2bd7c816 100644 --- a/content/pages/homepage.html +++ b/content/pages/homepage.html @@ -1,13 +1,13 @@ - - + + - + {% import "partials/basic.html" as basic %} {% import "partials/homepage.html" as homepage %} @@ -17,41 +17,63 @@ {% block homepage_notification %} {% endblock homepage_notification %} + {# + Hero: the central narrative. + + Leads with the positioning sentence ("the documentation infrastructure + layer") and immediately offers two audience paths -- engineering teams + and open source projects -- rather than sending everyone to the same + signup modal. The sub-hero label reinforces the "we've run this for a + long time and we plan to run it for a long time" voice. + #} {% block homepage_callout_wrapper %}
-
+
{% block homepage_callout %}
-

- Docs as Code for everyone -

-

- Empower your team with versioned documentation, seamless previews, and powerful authentication. All integrated into your Git workflow. -

- - {% block homepage_callout_buttons %} - - - Get started for free - - - - Explore features - - {% endblock homepage_callout_buttons %} + +

+ + + Running docs infrastructure since 2010 + +

+ +

+ The documentation infrastructure layer. + + Bring any tool — Sphinx, MkDocs, Docusaurus, Jupyter Book, whatever comes next. + We run the hard parts: builds, hosting, versioning, search, translations, previews, and auth. + +

+ + {% block homepage_callout_buttons %} + + + For engineering teams + + + + For open source projects + + +

+ Free for open source. 30-day trial on Business plans. No credit card required. +

+ {% endblock homepage_callout_buttons %}
{% endblock homepage_callout %}
{% block homepage_callout_image %} -
+
A terminal executing Git commands to build multiple versions of documentation
@@ -64,98 +86,250 @@

{% endblock homepage_callout_wrapper %} - {% block homepage_highlight %} - {% call marketing.highlight_list() %} - - {% call marketing.highlight_item( - icon="white fa-user-robot", - icon_style="--fa-secondary-color: skyblue; --fa-secondary-opacity: 1.0", - header="Automatic deploy previews", - color="grey") %} -

- Preview your documentation on every pull request. - Never guess what you're shipping again. -

- {% endcall %} - - {% call marketing.highlight_item( - icon="olive fa-terminal", - header="Ideal developer experience", - color="black") %} -

- Write documentation with Git and your favorite text editor. - Developers and writers both love docs as code. -

- {% endcall %} - - {% call marketing.highlight_item( - icon="white fa-key-skeleton", - icon_style="--fa-secondary-color: orangered; --fa-secondary-opacity: 1.0", - header="Work privately or publicly", - color="violet") %} -

- Share content with just your team, or with the whole world. - Sync permissions from GitHub, or manage custom permissions for your projects. -

- {% endcall %} - {% endcall %} - {% endblock homepage_highlight %} - {# Logos of businesses that use our product. #} {% include "includes/business-logos.html" %} + {# + Narrative layer: the three "your team shouldn't have to..." arguments. + + These sit at the top of the hierarchy (narratives > benefits > features). + Every card is written as an outcome the reader already cares about, + not as a feature we happen to ship. + #} + {% block homepage_narratives %} +
+
+
+

+ Your engineering team shouldn’t run a docs platform team. + + Docs-as-code is the right instinct. Hand-rolling it on a generic web host is not. + Read the Docs is the production-grade version of the pipeline you’d otherwise build yourself — + maintained by a team that has thought about nothing else for fifteen years. + +

+
+ + {% call marketing.highlight_list() %} + + {% call marketing.highlight_item( + icon="white fa-code-branch", + icon_style="--fa-secondary-color: skyblue; --fa-secondary-opacity: 1.0", + header="Ship versions without breaking the old ones", + color="grey") %} +

+ Match your release cycle. Every branch and tag becomes a version automatically, + with canonical URLs, redirects, and a version flyout your users already know how to use. +

+ {% endcall %} + + {% call marketing.highlight_item( + icon="olive fa-code-pull-request", + header="Catch doc regressions before you merge", + color="black") %} +

+ Every pull request gets its own live preview build with a diff against production. + Writers and engineers review the rendered output, not the raw diff. +

+ {% endcall %} + + {% call marketing.highlight_item( + icon="white fa-shield-halved", + icon_style="--fa-secondary-color: orangered; --fa-secondary-opacity: 1.0", + header="Keep control of your content and your users", + color="violet") %} +

+ Private docs, SSO with GitHub or GitLab, per-team permissions, and audit logs. + Your source of truth stays in Git. We don’t lock your content inside an editor. +

+ {% endcall %} + {% endcall %} +
+
+ {% endblock homepage_narratives %} + + {# + Featured customer story: a named quote with a real outcome. + + One strong quote with a named speaker is worth more than a logo strip + on its own. This is reusable on the enterprise page and comparison + pages. + #} + {% block homepage_featured_quote %} +
+
+
+
+
+ {% call marketing.testimonial( + name="Max Hilbrunner", + title="Software and Game Developer", + company="Godot Engine", + image="https://avatars.githubusercontent.com/u/1654763?v=4", + link="https://docs.godotengine.org/") %} + Read the Docs plays a large part in enabling a small volunteer team to maintain our docs. Without the generous Community plan, we couldn’t have afforded anything close to the CI/build resources that we got with Read the Docs. + {% endcall %} +
+
+
+
+
+ {% endblock homepage_featured_quote %} + + {# + AI / LLM position statement. + + Stating a clear, confident position -- "we're the stable substrate; + bring your own AI layer" -- is better than silence, and aligns with the + infrastructure voice. + #} + {% block homepage_ai_position %} +
+
+
+
+
+
+
+ +

+ Our stance on AI +

+
+
+

+ Your docs belong to you. We’re the substrate your AI layer sits on. +

+

+ We publish llms.txt and Markdown exports on every project so your + agents and search tools can read your docs the way they expect. + We don’t train models on your content, we don’t lock you into a + proprietary chat widget, and we don’t charge you extra for the bytes + an LLM pulls down. Bring Kapa, Inkeep, your own RAG pipeline, or nothing at all. + The docs still work. +

+

+ + Read our AI content policy + + +

+
+
+
+
+
+
+
+ {% endblock homepage_ai_position %} + + {# + Trust signals / scale stats. + + The "deliberately boring, in the Stripe sense" voice. Concrete numbers + beat adjectives. These are the same numbers already published on + /company/. + #} + {% block homepage_scale %} +
+
+
+
+

+ Infrastructure you can plan a decade around. + + We’ve been running this since 2010 and we plan to run it in 2035. + Your docs will outlive whatever authoring tool you pick. + +

+
+ +
+
+
+
55M+
+
pages served / month
+
+
+
+
+
80,000+
+
projects hosted
+
+
+
+
+
100,000+
+
writers & developers
+
+
+
+
+
15 yrs
+
in production
+
+
+
+
+
+
+ {% endblock homepage_scale %} -
+ {# + Feature grid -- demoted from top of the page. + Features are now layer 3 in the hierarchy: they're proof for readers who + have already bought the narrative and want to confirm it's real. + #} {% block homepage_feature_detail %}
-

- Features -

+
+

+ What’s inside the infrastructure layer + + Everything a mature docs platform needs, available on day one. + +

+
- {% call homepage.feature_detail_item(header="Supports any doc tool", icon="fad fa-terminal") %} - Integrated support for Sphinx, MkDocs, Jupyter Book. - Flexible enough to work with any documentation tool. + {% call homepage.feature_detail_item(header="Works with your tool", icon="fad fa-terminal") %} + First-class support for Sphinx, MkDocs, and Jupyter Book. + Flexible enough to run anything that outputs HTML. {% endcall %} {% call homepage.feature_detail_item(header="Integrated search", icon="fad fa-search") %} - Easily search all your docs via our dashboard, - and offer your users a more powerful search with our search API. + Fast, typo-tolerant search across every version and every project, with a search API for your own UI. {% endcall %} {% call homepage.feature_detail_item(header="Pull request previews", icon="fad fa-code-compare") %} - Preview each pull request before releasing any changes, - allowing for fast collaboration across your organization. + Every PR gets a live build and a visual diff, so reviewers see the rendered output before merge. {% endcall %} {% call homepage.feature_detail_item(header="Versioned docs", icon="fad fa-layer-group") %} - Match your product release cycle with multiple versions of your docs. Automatically build versions from any branch or tag. + Match your product release cycle. Automatically build versions from any branch or tag, with stable URLs and redirects. {% endcall %} - {% call homepage.feature_detail_item(header="Private repository support", icon="fad fa-lock", paid=True) %} - Clone private repositories using a connected GitHub, GitLab, or Bitbucket account, - or clone from any Git provider with an SSH key. + {% call homepage.feature_detail_item(header="Private docs", icon="fad fa-lock", paid=True) %} + Clone private repositories from GitHub, GitLab, or Bitbucket. Keep internal docs internal. {% endcall %} - {% call homepage.feature_detail_item(header="Single-Sign On", icon="fad fa-fingerprint", paid=True) %} - Control who has access to your documentation with integrated authentication. - Enable SSO with GitHub or GitLab to easily manage permissions in one place. + {% call homepage.feature_detail_item(header="Single sign-on", icon="fad fa-fingerprint", paid=True) %} + SSO with GitHub, GitLab, or Google Workspace. Manage permissions in one place instead of six. {% endcall %} {% block features_cta %} -
+ {% endblock features_cta %} @@ -170,23 +344,16 @@

{# Sphinx user testimonials #} {% include "includes/users-sphinx.html" %} - {# New developer testimonials #} + {# + Secondary testimonial row. + + One more named quote -- balances the Godot (OSS) story above with a + different angle on the same narrative. + #}
-
-
- {% call marketing.testimonial( - name="Max Hilbrunner", - title="Software and Game Developer", - company="Godot Engine", - image="https://avatars.githubusercontent.com/u/1654763?v=4", - link="https://docs.godotengine.org/") %} - Read the Docs plays a large part in enabling a small volunteer team to maintain our docs. Without the generous Community plan, we couldn't have afforded anything close to the CI/build resources that we got with Read the Docs. - {% endcall %} -
-
{% call marketing.testimonial( @@ -200,63 +367,47 @@

- {# -
-
-
- {% call marketing.testimonial( - name="Trevor James Smith", - title="Developer", - company="Ouranos", - image="https://github.com/Zeitsperre.png", - link="https://github.com/hydrologie/xdatasets/issues/32#issue-2019390201") %} - Read the Docs is a solid documentation hosting platform that is used all over the place and has some nice features on top of being FOSS software. - {% endcall %} -
-
-
-
- {% call marketing.testimonial( - name="Juan Luis Cano Rodríguez", - title="Developer Advocate", - company="Kedro", - image="https://github.com/astrojuanlu.png", - link="https://fosstodon.org/@kedro@social.lfx.dev/111608164611739960") %} - The documentation is now easier to navigate, thanks to a new top navigation bar and a search-as-you-type modal courtesy of Read the Docs. Snappy docs are happy docs! - {% endcall %} -
-
-
- #}
+ {# + Final CTA: re-surface the two audience paths from the hero, so the + homepage ends with the same split it started with. + #} {% block homepage_bottom_callout %}
-
+
- {# - TODO replace this block with something more actionable. It's - not saying anything new at this point in the page, and the call - to action is not strong. - #}
-

- Get your docs online in 5 minutes. -

- -

+

+ Get your docs online in five minutes. + + Import a repo, commit a .readthedocs.yaml, push. That’s the whole setup. + +

+ +
- - Create an account - + data-analytics="signup-modal-footer-team" + onclick="jQuery('#signup-modal').modal('show');"> + + Start a Business trial + + + + Host an open source project + +
+ +

+ Free Community tier for open source. 30-day free trial on Business plans.

diff --git a/src/sui/themes/rtd-site/globals/site.overrides b/src/sui/themes/rtd-site/globals/site.overrides index cbb3c18b..decb805c 100644 --- a/src/sui/themes/rtd-site/globals/site.overrides +++ b/src/sui/themes/rtd-site/globals/site.overrides @@ -1,3 +1,44 @@ +/* Homepage */ +#homepage { + // Small reassurance text under hero and footer CTAs + .hero-fineprint { + color: fade(@black, 55%); + font-size: 0.9rem; + margin-top: 0.75em; + } + + // Tighten the hero label so it sits clean above the h1 + .ui.padded.hero.container .ui.teal.basic.label { + margin-bottom: 0.75em; + } + + // AI stance card -- soft background, distinct from the rest of the page + #homepage-ai .ui.light.segment { + border: 1px solid @lightGrey; + border-radius: @defaultBorderRadius; + } + + // Scale / trust-signal strip -- Stripe-y, confident, boring + #homepage-scale { + .ui.inverted.grey.segment { + border-radius: 0; + margin: 0; + } + .ui.inverted.statistic > .value { + font-size: 2.75rem !important; + font-weight: 700; + } + .ui.inverted.statistic > .label { + color: fade(@white, 75%); + text-transform: none; + font-size: 0.9rem; + } + .ui.inverted.header .sub.header { + color: fade(@white, 75%); + } + } +} + /* Pricing page - tables * TODO replace this with native SUI, these aren't needed. */ #pricing #tables { From 087fc3dc1217e4df579f671e25004506bed66468 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 24 Apr 2026 04:05:46 +0000 Subject: [PATCH 2/4] Tighten homepage revamp: audience cards, leaner CSS, cleaner flow Rework v1 of the homepage revamp based on review: - Replace scattered inline styles with native SUI classes only - Add proper two-card audience split section ("For engineering teams" / "For open source projects") below the hero instead of encoding it only in hero buttons - Keep hero CTA simple and consistent with the original ("Get started for free" / "Explore features") instead of audience-specific buttons - Strip verbose Jinja comments to keep the template scannable - Pair testimonials side-by-side (Godot + UC Berkeley) in one section - Keep bottom CTA simple and matching the original pattern - Slim down LESS overrides to only the stats strip and AI card border https://claude.ai/code/session_01Xq2jGSBae9jxVwb6HzpDWt --- content/pages/homepage.html | 361 ++++++++---------- .../themes/rtd-site/globals/site.overrides | 19 - 2 files changed, 152 insertions(+), 228 deletions(-) diff --git a/content/pages/homepage.html b/content/pages/homepage.html index 2bd7c816..ecf68f19 100644 --- a/content/pages/homepage.html +++ b/content/pages/homepage.html @@ -1,7 +1,7 @@ - + @@ -17,63 +17,43 @@ {% block homepage_notification %} {% endblock homepage_notification %} - {# - Hero: the central narrative. - - Leads with the positioning sentence ("the documentation infrastructure - layer") and immediately offers two audience paths -- engineering teams - and open source projects -- rather than sending everyone to the same - signup modal. The sub-hero label reinforces the "we've run this for a - long time and we plan to run it for a long time" voice. - #} {% block homepage_callout_wrapper %}
-
+
{% block homepage_callout %}
-

- - - Running docs infrastructure since 2010 - -

- -

- The documentation infrastructure layer. - - Bring any tool — Sphinx, MkDocs, Docusaurus, Jupyter Book, whatever comes next. - We run the hard parts: builds, hosting, versioning, search, translations, previews, and auth. - -

- - {% block homepage_callout_buttons %} - - - For engineering teams - - - - For open source projects - - -

- Free for open source. 30-day trial on Business plans. No credit card required. -

- {% endblock homepage_callout_buttons %} +

+ The documentation infrastructure layer. + + Bring any tool — Sphinx, MkDocs, Jupyter Book, whatever comes next. + We run the hard parts: builds, hosting, versioning, search, translations, previews, and auth. + +

+ + {% block homepage_callout_buttons %} + + + Get started for free + + + + Explore features + + {% endblock homepage_callout_buttons %}
{% endblock homepage_callout %}
{% block homepage_callout_image %} -
+
A terminal executing Git commands to build multiple versions of documentation
@@ -86,103 +66,102 @@

{% endblock homepage_callout_wrapper %} - {# Logos of businesses that use our product. #} - {% include "includes/business-logos.html" %} - - {# - Narrative layer: the three "your team shouldn't have to..." arguments. - - These sit at the top of the hierarchy (narratives > benefits > features). - Every card is written as an outcome the reader already cares about, - not as a feature we happen to ship. - #} - {% block homepage_narratives %} + {# Audience paths #} + {% block homepage_audience %}
-
-

- Your engineering team shouldn’t run a docs platform team. - - Docs-as-code is the right instinct. Hand-rolling it on a generic web host is not. - Read the Docs is the production-grade version of the pipeline you’d otherwise build yourself — - maintained by a team that has thought about nothing else for fifteen years. - -

-
- - {% call marketing.highlight_list() %} - - {% call marketing.highlight_item( - icon="white fa-code-branch", - icon_style="--fa-secondary-color: skyblue; --fa-secondary-opacity: 1.0", - header="Ship versions without breaking the old ones", - color="grey") %} -

- Match your release cycle. Every branch and tag becomes a version automatically, - with canonical URLs, redirects, and a version flyout your users already know how to use. -

- {% endcall %} - - {% call marketing.highlight_item( - icon="olive fa-code-pull-request", - header="Catch doc regressions before you merge", - color="black") %} -

- Every pull request gets its own live preview build with a diff against production. - Writers and engineers review the rendered output, not the raw diff. -

- {% endcall %} - - {% call marketing.highlight_item( - icon="white fa-shield-halved", - icon_style="--fa-secondary-color: orangered; --fa-secondary-opacity: 1.0", - header="Keep control of your content and your users", - color="violet") %} -

- Private docs, SSO with GitHub or GitLab, per-team permissions, and audit logs. - Your source of truth stays in Git. We don’t lock your content inside an editor. -

- {% endcall %} - {% endcall %} -
-
- {% endblock homepage_narratives %} - - {# - Featured customer story: a named quote with a real outcome. - - One strong quote with a named speaker is worth more than a logo strip - on its own. This is reusable on the enterprise page and comparison - pages. - #} - {% block homepage_featured_quote %} -
-
-
-
+
+
- {% call marketing.testimonial( - name="Max Hilbrunner", - title="Software and Game Developer", - company="Godot Engine", - image="https://avatars.githubusercontent.com/u/1654763?v=4", - link="https://docs.godotengine.org/") %} - Read the Docs plays a large part in enabling a small volunteer team to maintain our docs. Without the generous Community plan, we couldn’t have afforded anything close to the CI/build resources that we got with Read the Docs. - {% endcall %} +

+ + + For engineering teams + Private docs, SSO, audit logs, and a 30-day free trial. + +

+

+ Your engineering team shouldn’t run a docs platform team. + We handle the infrastructure so your writers and developers + ship documentation, not pipelines. +

+ + Start your free trial + +
+
+
+
+

+ + + For open source projects + Free forever. No limits on builds or versions. + +

+

+ We’ve hosted open source documentation since 2010. + Flask, Jupyter, Godot, and thousands more trust us + to keep their docs online and searchable. +

+ + Host your project +
- {% endblock homepage_featured_quote %} + {% endblock homepage_audience %} - {# - AI / LLM position statement. + {% include "includes/business-logos.html" %} - Stating a clear, confident position -- "we're the stable substrate; - bring your own AI layer" -- is better than silence, and aligns with the - infrastructure voice. - #} +
+ + {# Narrative layer: outcomes, not features #} + {% block homepage_highlight %} + {% call marketing.highlight_list() %} + + {% call marketing.highlight_item( + icon="white fa-code-branch", + icon_style="--fa-secondary-color: skyblue; --fa-secondary-opacity: 1.0", + header="Ship versions without breaking the old ones", + color="grey") %} +

+ Every branch and tag becomes a version automatically, + with canonical URLs, redirects, and a version flyout + your users already know how to use. +

+ {% endcall %} + + {% call marketing.highlight_item( + icon="olive fa-code-pull-request", + header="Catch doc regressions before you merge", + color="black") %} +

+ Every pull request gets a live preview build with a visual diff + against production. Review rendered output, not raw markup. +

+ {% endcall %} + + {% call marketing.highlight_item( + icon="white fa-shield-halved", + icon_style="--fa-secondary-color: orangered; --fa-secondary-opacity: 1.0", + header="Your content stays yours", + color="violet") %} +

+ Your source of truth stays in Git. We don’t lock your content inside + an editor. Private docs, SSO, per-team permissions, and audit logs. +

+ {% endcall %} + {% endcall %} + {% endblock homepage_highlight %} + + {# AI / LLM position #} {% block homepage_ai_position %}
@@ -190,30 +169,20 @@

-
+
-

- Our stance on AI -

-
+

- Your docs belong to you. We’re the substrate your AI layer sits on. + We’re the substrate your AI layer sits on. + Ready for the AI-powered documentation era.

- We publish llms.txt and Markdown exports on every project so your - agents and search tools can read your docs the way they expect. - We don’t train models on your content, we don’t lock you into a - proprietary chat widget, and we don’t charge you extra for the bytes - an LLM pulls down. Bring Kapa, Inkeep, your own RAG pipeline, or nothing at all. - The docs still work. -

-

- - Read our AI content policy - - + Every project gets llms.txt and Markdown exports so your agents and + search tools can read your docs natively. We don’t train on your content, + we don’t lock you into a chat widget, and we don’t charge extra for LLM access. + Bring Kapa, Inkeep, your own RAG pipeline, or nothing at all.

@@ -224,18 +193,12 @@

{% endblock homepage_ai_position %} - {# - Trust signals / scale stats. - - The "deliberately boring, in the Stripe sense" voice. Concrete numbers - beat adjectives. These are the same numbers already published on - /company/. - #} + {# Trust signals #} {% block homepage_scale %}
-
+

Infrastructure you can plan a decade around. @@ -254,13 +217,13 @@

-
80,000+
+
80k+
projects hosted
-
100,000+
+
100k+
writers & developers
@@ -276,24 +239,14 @@

{% endblock homepage_scale %} - {# - Feature grid -- demoted from top of the page. - - Features are now layer 3 in the hierarchy: they're proof for readers who - have already bought the narrative and want to confirm it's real. - #} + {# Features — demoted to layer 3 in the hierarchy #} {% block homepage_feature_detail %}
-
-

- What’s inside the infrastructure layer - - Everything a mature docs platform needs, available on day one. - -

-
+

+ What’s inside the infrastructure layer +

@@ -303,18 +256,18 @@

{% endcall %} {% call homepage.feature_detail_item(header="Integrated search", icon="fad fa-search") %} - Fast, typo-tolerant search across every version and every project, with a search API for your own UI. + Fast, typo-tolerant search across every version and project, with a search API for your own UI. {% endcall %} {% call homepage.feature_detail_item(header="Pull request previews", icon="fad fa-code-compare") %} - Every PR gets a live build and a visual diff, so reviewers see the rendered output before merge. + Every PR gets a live build and a visual diff so reviewers see the rendered output before merge. {% endcall %} {% call homepage.feature_detail_item(header="Versioned docs", icon="fad fa-layer-group") %} - Match your product release cycle. Automatically build versions from any branch or tag, with stable URLs and redirects. + Automatically build versions from any branch or tag, with stable URLs and redirects. {% endcall %} - {% call homepage.feature_detail_item(header="Private docs", icon="fad fa-lock", paid=True) %} + {% call homepage.feature_detail_item(header="Private repository support", icon="fad fa-lock", paid=True) %} Clone private repositories from GitHub, GitLab, or Bitbucket. Keep internal docs internal. {% endcall %} @@ -323,10 +276,10 @@

{% endcall %} {% block features_cta %} -
+
@@ -344,16 +297,23 @@

{# Sphinx user testimonials #} {% include "includes/users-sphinx.html" %} - {# - Secondary testimonial row. - - One more named quote -- balances the Godot (OSS) story above with a - different angle on the same narrative. - #} + {# Developer testimonials #}
+
+
+ {% call marketing.testimonial( + name="Max Hilbrunner", + title="Software and Game Developer", + company="Godot Engine", + image="https://avatars.githubusercontent.com/u/1654763?v=4", + link="https://docs.godotengine.org/") %} + Read the Docs plays a large part in enabling a small volunteer team to maintain our docs. Without the generous Community plan, we couldn’t have afforded anything close to the CI/build resources that we got with Read the Docs. + {% endcall %} +
+
{% call marketing.testimonial( @@ -371,43 +331,26 @@

- {# - Final CTA: re-surface the two audience paths from the hero, so the - homepage ends with the same split it started with. - #} {% block homepage_bottom_callout %}
-
+
-

- Get your docs online in five minutes. - - Import a repo, commit a .readthedocs.yaml, push. That’s the whole setup. - -

+

+ Get your docs online in 5 minutes. +

- - -

- Free Community tier for open source. 30-day free trial on Business plans.

diff --git a/src/sui/themes/rtd-site/globals/site.overrides b/src/sui/themes/rtd-site/globals/site.overrides index decb805c..39650051 100644 --- a/src/sui/themes/rtd-site/globals/site.overrides +++ b/src/sui/themes/rtd-site/globals/site.overrides @@ -1,37 +1,18 @@ /* Homepage */ #homepage { - // Small reassurance text under hero and footer CTAs - .hero-fineprint { - color: fade(@black, 55%); - font-size: 0.9rem; - margin-top: 0.75em; - } - - // Tighten the hero label so it sits clean above the h1 - .ui.padded.hero.container .ui.teal.basic.label { - margin-bottom: 0.75em; - } - - // AI stance card -- soft background, distinct from the rest of the page #homepage-ai .ui.light.segment { border: 1px solid @lightGrey; border-radius: @defaultBorderRadius; } - // Scale / trust-signal strip -- Stripe-y, confident, boring #homepage-scale { .ui.inverted.grey.segment { border-radius: 0; margin: 0; } - .ui.inverted.statistic > .value { - font-size: 2.75rem !important; - font-weight: 700; - } .ui.inverted.statistic > .label { color: fade(@white, 75%); text-transform: none; - font-size: 0.9rem; } .ui.inverted.header .sub.header { color: fade(@white, 75%); From af09e29f01d8ea511452e2a7b4a0444586c0a82a Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 24 Apr 2026 05:50:39 +0000 Subject: [PATCH 3/4] Fix CI: rebuild compiled CSS, add richer homepage visuals The CI build step failed because site.overrides was changed without rebuilding readthedocs_theme/static/css/site.css. Rebuilt with the project's node 14 toolchain so compiled assets match the LESS source. Visual upgrades to the homepage: - Audience path cards now use inverted teal/violet segments for stronger visual contrast and brand color reinforcement - Added two image-backed feature showcase sections (versioned docs flyout and PR visual diff) using the header_image macro from the docs-as-code page, giving the page more visual depth - Added a decorative horizontal divider between logo strip and highlight blocks for cleaner section rhythm - Streamlined the AI stance section (removed redundant sub-label) All CI checks pass locally: lint, test, build-assets, pelican build, html-validate. https://claude.ai/code/session_01Xq2jGSBae9jxVwb6HzpDWt --- content/pages/homepage.html | 106 ++++++++++++++++++++------ readthedocs_theme/static/css/site.css | 2 +- 2 files changed, 83 insertions(+), 25 deletions(-) diff --git a/content/pages/homepage.html b/content/pages/homepage.html index ecf68f19..4931013f 100644 --- a/content/pages/homepage.html +++ b/content/pages/homepage.html @@ -17,6 +17,7 @@ {% block homepage_notification %} {% endblock homepage_notification %} + {# ── Hero ── #} {% block homepage_callout_wrapper %}
@@ -66,50 +67,48 @@

{% endblock homepage_callout_wrapper %} - {# Audience paths #} + {# ── Audience paths ── #} {% block homepage_audience %}
-
-

- - - For engineering teams - Private docs, SSO, audit logs, and a 30-day free trial. - +
+ +

+ For engineering teams + Private docs, SSO, audit logs, and a 30-day free trial.

Your engineering team shouldn’t run a docs platform team. We handle the infrastructure so your writers and developers ship documentation, not pipelines.

- Start your free trial +

-
-

- - - For open source projects - Free forever. No limits on builds or versions. - +
+ +

+ For open source projects + Free forever. No limits on builds or versions.

We’ve hosted open source documentation since 2010. Flask, Jupyter, Godot, and thousands more trust us to keep their docs online and searchable.

- Host your project +

@@ -120,9 +119,13 @@

{% include "includes/business-logos.html" %} -
+
+
+ +
+
- {# Narrative layer: outcomes, not features #} + {# ── Narrative highlights ── #} {% block homepage_highlight %} {% call marketing.highlight_list() %} @@ -161,7 +164,61 @@

{% endcall %} {% endblock homepage_highlight %} - {# AI / LLM position #} + {# ── Visual feature showcase with images ── #} + {% block homepage_showcase %} +
+
+ +
+ + {% call basic.header_image( + header="Versioned docs that match your release cycle", + image=SITE_URL ~ "/images/docs-as-code/flyout-zoomed.png", + image_alt="Flyout showing versions of a documentation project", + use_large_image=False, + vertical_align="middle") %} +

+ Users of your v1.x shouldn’t be reading v2.0 docs. + We build every branch, every tag, and give each version its own URL. + A flyout menu lets readers switch between versions instantly. +

+ + + Learn about versioning + + {% endcall %} + +
+ +
+
+
+ +
+ + {% call basic.header_image( + header="Review every change before it ships", + image=SITE_URL ~ "/images/docs-as-code/visual-diff.png", + image_alt="Visual diff between two versions", + use_large_image=False, + vertical_align="middle") %} +

+ Open a pull request and we build a full preview of the docs, complete with a + visual diff so reviewers see exactly what readers will see. No guessing. +

+ + + Learn about PR previews + + {% endcall %} + +
+ +
+
+ {% endblock homepage_showcase %} + + {# ── AI / LLM position ── #} {% block homepage_ai_position %}
@@ -193,7 +250,7 @@

{% endblock homepage_ai_position %} - {# Trust signals #} + {# ── Trust signals ── #} {% block homepage_scale %}
@@ -239,7 +296,7 @@

{% endblock homepage_scale %} - {# Features — demoted to layer 3 in the hierarchy #} + {# ── Features grid ── #} {% block homepage_feature_detail %}
@@ -294,10 +351,10 @@

{# Try it out code block #} {% include "includes/try-it-out.html" %} - {# Sphinx user testimonials #} + {# Project showcase #} {% include "includes/users-sphinx.html" %} - {# Developer testimonials #} + {# ── Developer testimonials ── #}
@@ -331,6 +388,7 @@

+ {# ── Bottom CTA ── #} {% block homepage_bottom_callout %}
diff --git a/readthedocs_theme/static/css/site.css b/readthedocs_theme/static/css/site.css index a64911a5..dec8705c 100644 --- a/readthedocs_theme/static/css/site.css +++ b/readthedocs_theme/static/css/site.css @@ -19,7 +19,7 @@ * Released under the MIT license * http://opensource.org/licenses/MIT * - */body,html{height:100%}html{font-size:16px}body{margin:0;overflow-x:hidden;min-width:320px;background:#fff;font-size:16px;line-height:1.5em;color:#252a31}body,h1,h2,h3,h4,h5{padding:0;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif}h1,h2,h3,h4,h5{line-height:1.2;margin:calc(2rem - .1em) 0 1rem;font-weight:600}h1{min-height:1rem;font-size:2rem}h2{font-size:1.71428571rem}h3{font-size:1.28571429rem}h4{font-size:1.07142857rem}h5{font-size:1rem}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child{margin-bottom:0}p{margin:0 0 1em;line-height:1.5em}p:first-child{margin-top:0}p:last-child{margin-bottom:0}a{color:#0993af}a,a:hover{text-decoration:none}a:hover{color:#00829c}::-webkit-selection{background-color:#cce2ff;color:#252a31}::-moz-selection{background-color:#cce2ff;color:#252a31}::selection{background-color:#cce2ff;color:#252a31}input::-webkit-selection,textarea::-webkit-selection{background-color:hsla(0,0%,39.2%,.4);color:#252a31}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0,0%,39.2%,.4);color:#252a31}input::selection,textarea::selection{background-color:hsla(0,0%,39.2%,.4);color:#252a31}body ::-webkit-scrollbar{-webkit-appearance:none;width:10px;height:10px}body ::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:0}body ::-webkit-scrollbar-thumb{cursor:pointer;border-radius:5px;background:rgba(0,0,0,.25);transition:color .2s ease}body ::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}body ::-webkit-scrollbar-thumb:hover{background:rgba(128,135,139,.8)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-track{background:hsla(0,0%,100%,.1)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb:window-inactive{background:hsla(0,0%,100%,.15)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.35)}body>main{min-height:55vh}html{scroll-behavior:smooth}.ui.red.text{color:#db2828}.ui.orange.text{color:#e24d33}.ui.yellow.text{color:#fbbd08}.ui.olive.text{color:#b5cc18}.ui.green.text{color:#479830}.ui.teal.text{color:#0993af}.ui.blue.text{color:#1171b0}.ui.violet.text{color:#6435c9}.ui.purple.text{color:#a333c8}.ui.pink.text{color:#e03997}.ui.brown.text{color:#a5673f}.ui.grey.text{color:#767676}.ui.black.text{color:#252a31}#pricing #tables .ui.header.divider{margin-top:42px}#pricing #tables .card .button.fluid{margin:25px 0}#pricing #tables .card>.content>.description{margin:35px 0 20px}#pricing #tables .card>.extra{border-top:none!important}#company #team{z-index:1}#company #resources{margin-top:-250px;padding-top:250px}.ui.ui.ui.inverted.segment>div.highlight{margin-top:1rem;overflow-x:scroll}.ui.docutils.container div.section,.ui.docutils.segment div.section{margin:40px 0}.ui.docutils.container pre,.ui.docutils.segment pre{background-color:#f9fafb;border:1px solid #dcddde;border-radius:.1875rem;padding:.6875em .875em;overflow-x:scroll}.ui.docutils.container code,.ui.docutils.container tt,.ui.docutils.segment code,.ui.docutils.segment tt{padding:.15em .25em}.ui.docutils.container dl,.ui.docutils.segment dl{margin:1em 0}.ui.docutils.container dt,.ui.docutils.segment dt{margin-top:1em;font-weight:600}.ui.docutils.container dd,.ui.docutils.segment dd{margin:1em}.ui.docutils.container img:not(.ui.image),.ui.docutils.segment img:not(.ui.image){width:100%;margin:20px 0 10px}.ui.docutils.container p>img:not(.ui.image),.ui.docutils.segment p>img:not(.ui.image){margin-bottom:0}.ui.docutils.container p+p>img:not(.ui.image),.ui.docutils.segment p+p>img:not(.ui.image){margin-top:10px}.ui.docutils.container figure img:not(.ui.image),.ui.docutils.segment figure img:not(.ui.image){margin:0;display:block}.ui.docutils.container figure,.ui.docutils.segment figure{width:100%;margin:20px 0}.ui.docutils.container figcaption,.ui.docutils.segment figcaption{margin-top:20px;font-style:italic;text-align:center} + */body,html{height:100%}html{font-size:16px}body{margin:0;overflow-x:hidden;min-width:320px;background:#fff;font-size:16px;line-height:1.5em;color:#252a31}body,h1,h2,h3,h4,h5{padding:0;font-family:Lato,Helvetica Neue,Arial,Helvetica,sans-serif}h1,h2,h3,h4,h5{line-height:1.2;margin:calc(2rem - .1em) 0 1rem;font-weight:600}h1{min-height:1rem;font-size:2rem}h2{font-size:1.71428571rem}h3{font-size:1.28571429rem}h4{font-size:1.07142857rem}h5{font-size:1rem}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child{margin-bottom:0}p{margin:0 0 1em;line-height:1.5em}p:first-child{margin-top:0}p:last-child{margin-bottom:0}a{color:#0993af}a,a:hover{text-decoration:none}a:hover{color:#00829c}::-webkit-selection{background-color:#cce2ff;color:#252a31}::-moz-selection{background-color:#cce2ff;color:#252a31}::selection{background-color:#cce2ff;color:#252a31}input::-webkit-selection,textarea::-webkit-selection{background-color:hsla(0,0%,39.2%,.4);color:#252a31}input::-moz-selection,textarea::-moz-selection{background-color:hsla(0,0%,39.2%,.4);color:#252a31}input::selection,textarea::selection{background-color:hsla(0,0%,39.2%,.4);color:#252a31}body ::-webkit-scrollbar{-webkit-appearance:none;width:10px;height:10px}body ::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:0}body ::-webkit-scrollbar-thumb{cursor:pointer;border-radius:5px;background:rgba(0,0,0,.25);transition:color .2s ease}body ::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}body ::-webkit-scrollbar-thumb:hover{background:rgba(128,135,139,.8)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-track{background:hsla(0,0%,100%,.1)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb:window-inactive{background:hsla(0,0%,100%,.15)}body .ui.inverted:not(.dimmer)::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.35)}body>main{min-height:55vh}html{scroll-behavior:smooth}.ui.red.text{color:#db2828}.ui.orange.text{color:#e24d33}.ui.yellow.text{color:#fbbd08}.ui.olive.text{color:#b5cc18}.ui.green.text{color:#479830}.ui.teal.text{color:#0993af}.ui.blue.text{color:#1171b0}.ui.violet.text{color:#6435c9}.ui.purple.text{color:#a333c8}.ui.pink.text{color:#e03997}.ui.brown.text{color:#a5673f}.ui.grey.text{color:#767676}.ui.black.text{color:#252a31}#homepage #homepage-ai .ui.light.segment{border:1px solid #dcddde;border-radius:.25rem}#homepage #homepage-scale .ui.inverted.grey.segment{border-radius:0;margin:0}#homepage #homepage-scale .ui.inverted.statistic>.label{color:hsla(0,0%,100%,.75);text-transform:none}#homepage #homepage-scale .ui.inverted.header .sub.header{color:hsla(0,0%,100%,.75)}#pricing #tables .ui.header.divider{margin-top:42px}#pricing #tables .card .button.fluid{margin:25px 0}#pricing #tables .card>.content>.description{margin:35px 0 20px}#pricing #tables .card>.extra{border-top:none!important}#company #team{z-index:1}#company #resources{margin-top:-250px;padding-top:250px}.ui.ui.ui.inverted.segment>div.highlight{margin-top:1rem;overflow-x:scroll}.ui.docutils.container div.section,.ui.docutils.segment div.section{margin:40px 0}.ui.docutils.container pre,.ui.docutils.segment pre{background-color:#f9fafb;border:1px solid #dcddde;border-radius:.1875rem;padding:.6875em .875em;overflow-x:scroll}.ui.docutils.container code,.ui.docutils.container tt,.ui.docutils.segment code,.ui.docutils.segment tt{padding:.15em .25em}.ui.docutils.container dl,.ui.docutils.segment dl{margin:1em 0}.ui.docutils.container dt,.ui.docutils.segment dt{margin-top:1em;font-weight:600}.ui.docutils.container dd,.ui.docutils.segment dd{margin:1em}.ui.docutils.container img:not(.ui.image),.ui.docutils.segment img:not(.ui.image){width:100%;margin:20px 0 10px}.ui.docutils.container p>img:not(.ui.image),.ui.docutils.segment p>img:not(.ui.image){margin-bottom:0}.ui.docutils.container p+p>img:not(.ui.image),.ui.docutils.segment p+p>img:not(.ui.image){margin-top:10px}.ui.docutils.container figure img:not(.ui.image),.ui.docutils.segment figure img:not(.ui.image){margin:0;display:block}.ui.docutils.container figure,.ui.docutils.segment figure{width:100%;margin:20px 0}.ui.docutils.container figcaption,.ui.docutils.segment figcaption{margin-top:20px;font-style:italic;text-align:center} /*! * # Fomantic-UI - Button * http://github.com/fomantic/Fomantic-UI/ From 14d2088f2b64701cab61482ebd971c4f3ffbf887 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 12 May 2026 20:30:37 +0000 Subject: [PATCH 4/4] Update hero subheadline to "stop hand-rolling" copy https://claude.ai/code/session_01Xq2jGSBae9jxVwb6HzpDWt --- content/pages/homepage.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/content/pages/homepage.html b/content/pages/homepage.html index 4931013f..21f3aa15 100644 --- a/content/pages/homepage.html +++ b/content/pages/homepage.html @@ -31,8 +31,7 @@

The documentation infrastructure layer. - Bring any tool — Sphinx, MkDocs, Jupyter Book, whatever comes next. - We run the hard parts: builds, hosting, versioning, search, translations, previews, and auth. + Stop hand-rolling your docs infrastructure. Versioning, previews, search, SSO, translations, and CDN hosting — built and maintained so your team doesn’t have to.