Skip to content

Add docs for the Renderer API#13715

Merged
ArmandPhilippot merged 11 commits intomainfrom
armand/renderer-api
Apr 15, 2026
Merged

Add docs for the Renderer API#13715
ArmandPhilippot merged 11 commits intomainfrom
armand/renderer-api

Conversation

@ArmandPhilippot
Copy link
Copy Markdown
Member

@ArmandPhilippot ArmandPhilippot commented Apr 10, 2026

Description (required)

Adds a new reference page for the Renderer API:

  • move some types from the Integration API to the new Renderer API (some have been reworded, not all)
  • reuse a structure similar to the Adapter API to explain how to build a renderer
  • clean up the Integration reference
    • SSRManifest.pageModule.renderers was removed in v6, the type was a leftover from fix(v6): update integrations reference with v6 changes #13164
    • we now describe twice serverEntrypoint/clientEntrypoint in the Renderer API, so we might not need a third description in the Integration API, and I'm not sure the React link was helpful? (ie. this was old content, maybe it was useful at that time)

Feedback welcome:

  1. We don't want to show complex code snippets, but something that is enough to understand how this works. I tried to provide minimal code snippets based on the existing renderers but I'm not sure if this is too minimal or not.

  2. It seems /en/reference/renderer-reference existed before, so I had to update the redirections. I'm not sure how Netlify handles them... maybe we want another slug for the page to avoid any conflicts?

  3. I wonder if it would make sense to have a new sidebar group for integration-related APIs instead of lengthening the list in "Other development APIs"? Something like:
    Screenshot of the sidebar reorganization

Related issues & labels (optional)

@ArmandPhilippot ArmandPhilippot added the add new content Document something that is not in docs. May require testing, confirmation, or affect other pages. label Apr 10, 2026
@netlify
Copy link
Copy Markdown

netlify Bot commented Apr 10, 2026

Deploy Preview for astro-docs-2 ready!

Name Link
🔨 Latest commit df20d2d
🔍 Latest deploy log https://app.netlify.com/projects/astro-docs-2/deploys/69dfe9f21ffe2000086b0e02
😎 Deploy Preview https://deploy-preview-13715--astro-docs-2.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@astrobot-houston
Copy link
Copy Markdown
Contributor

astrobot-houston commented Apr 10, 2026

Lunaria Status Overview

🌕 This pull request will trigger status changes.

Learn more

By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.

You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File Note
en/reference/integrations-reference.mdx Source changed, localizations will be marked as outdated.
en/reference/renderer-reference.mdx Localization added, will be marked as complete.
Warnings reference
Icon Description
🔄️ The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

@ArmandPhilippot ArmandPhilippot marked this pull request as ready for review April 13, 2026 15:07
Comment thread src/content/docs/en/reference/renderer-reference.mdx Outdated

A renderer is a special kind of [integration](/en/reference/integrations-reference/) that tells Astro how to detect and render component syntaxes it does not handle natively, such as [UI framework components](/en/guides/framework-components/). A renderer consists of two parts:
- a server module imported during development and production builds to render components to HTML.
- an optional client module imported in the browser to hydrate components with [client directives](/en/reference/directives-reference/#client-directives).
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great explanation of these two things

Copy link
Copy Markdown
Contributor

@matthewp matthewp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Definitely much better than what we had before. Great job!

Co-authored-by:  Matthew Phillips <matthewphillips@cloudflare.com>
Copy link
Copy Markdown
Member

@yanthomasdev yanthomasdev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Amazing work @ArmandPhilippot!

@ArmandPhilippot
Copy link
Copy Markdown
Member Author

If even Yan doesn't have nitpicks about the wording, I guess this one is ready to be shipped! Thank you both for the reviews!

I guess the sidebar reorganization (my third point in "Feedback welcome") can wait (NWTWWHB), especially since Fred wants to do some clean up around third-party guides. Perhaps he has other changes in mind.

@ArmandPhilippot ArmandPhilippot merged commit 58ff284 into main Apr 15, 2026
10 checks passed
@ArmandPhilippot ArmandPhilippot deleted the armand/renderer-api branch April 15, 2026 19:47
ArmandPhilippot added a commit to ArmandPhilippot/astro-docs that referenced this pull request Apr 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

add new content Document something that is not in docs. May require testing, confirmation, or affect other pages.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document the renderer API

4 participants