Embedded mode

You can now hide the header and footer from your documentation pages by adding ?embedded=true to any URL. This makes it easy to embed your docs in iframes, dashboards, or other contexts where you want to display only the content.

Once enabled, embedded mode persists across navigation events within the same session.

Learn more about embedded mode.


Custom page actions

Define custom page action buttons with your own titles, icons, and URLs. Custom actions appear alongside the built-in page actions like Copy Page and View as Markdown, and can link to external tools, editors, or any URL.

docs.yml
1page-actions:
2 options:
3 custom:
4 - title: Open in Windsurf
5 subtitle: Edit with AI assistance
6 url: "windsurf://open?url={url}"
7 icon: fa-solid fa-wind
8 default: true

Custom actions support URL placeholders like {slug}, {domain}, and {url} to dynamically insert page information into the link.

Learn more about configuring custom page actions.


AI-enhanced examples

Fern automatically generates realistic request and response examples for your API Reference using AI. Instead of placeholder values like "string" and 1.1, your examples contain believable data based on your OpenAPI spec’s endpoint properties and descriptions.

These examples stay in sync with your spec - when you change or add fields, the generated examples update automatically. You can customize the style of generated examples, edit them directly, or disable the feature entirely.

Learn more about AI-enhanced examples.


Logo right-text property

You can now display custom text to the right of your logo image using the new right-text property in your logo configuration. This is useful for adding labels like “Docs” or “API” next to your logo.

docs.yml
1logo:
2 dark: assets/images/logo-dark.svg
3 light: assets/images/logo-light.svg
4 right-text: Docs

Learn more about the logo configuration options.

Canvas body theme

A new canvas body theme option wraps your main content area in a card-like container with rounded corners and a subtle border. This creates a more contained, focused reading experience that visually separates your documentation content from the sidebar and header.

docs.yml
1theme:
2 body: canvas

The canvas theme applies to all page layouts including guides, overviews, and API reference pages. It uses your configured card-background color and border color for consistent styling with your site’s color scheme.

Learn more about theme configuration options.


Schema snippet component

The new <SchemaSnippet> component displays type definitions from your API Reference as a JSON code block. Use it alongside the <Schema> component to show both a JSON representation and the detailed field breakdown of your data models.

The AIChatConfig Object
1{
2 "model": "claude-3.5",
3 "system-prompt": "string"
4}
Markdown
1<SchemaSnippet type="AIChatConfig" title="The AIChatConfig Object" />

Learn more about the Schema Snippet component.


Last updated frontmatter property

You can now display a “Last updated” message in the page footer using the new last-updated frontmatter property. This helps readers know when the content was last modified.

1---
2title: API Reference
3last-updated: December 9, 2025
4---

The date is displayed as-is in small text below the on-page feedback, so you can use any date format you prefer.

Learn more about the last-updated frontmatter property.

You can now use the <Footer> component in your API endpoint descriptions to add content that renders at the bottom of the page, below the response section. This is useful for related links, additional context, or notes that make more sense at the end of the endpoint documentation.

api/openapi.yml
1paths:
2 /plants:
3 get:
4 summary: List all plants
5 description: |
6 Get a list of all plants in the system.
7
8 <Footer>
9 ## Related endpoints
10
11 - [Create a plant](/api-reference/plants/create)
12 - [Update a plant](/api-reference/plants/update)
13 </Footer>

Learn more about adding footers and other Markdown content to your API Reference.


Security update: React Server Components vulnerability patched

We’ve updated our platform to address a critical security vulnerability (CVE-2025-66478) in React Server Components. This vulnerability, rated CVSS 10.0, could allow remote code execution when processing attacker-controlled requests in unpatched environments.

The vulnerability originates in the upstream React implementation (CVE-2025-55182) and affects Next.js applications using the App Router with React Server Components.

What we did

We upgraded our platform dependencies to the patched versions:

  • Next.js: Updated from 15.5.4 to 15.5.7
  • React: Updated from 19.0.0 to 19.0.1
  • React-DOM: Updated from 19.0.0 to 19.0.1

These versions include the hardened React Server Components implementation that resolves the vulnerability.

Impact on Fern users

No action is required from Fern Docs users. The security patch has been applied to all Fern-hosted documentation sites automatically.

For self-hosted deployments, we recommend updating to the latest Fern platform version to ensure you have the security fix.

References


Tag description pages for API references

You can now use OpenAPI tag descriptions as summary pages for API reference sections. When you set tag-description-pages: true in your API reference configuration, Fern automatically creates a summary page for each tag using its description from your OpenAPI specification.

docs.yml
1navigation:
2 - api: API Reference
3 tag-description-pages: true

Learn more about API reference configuration options.


Product and version-specific announcement banners

Announcement banners can now be configured at multiple levels to target specific products or versions.

The override hierarchy is:

  1. Version-level - Highest priority, always shown when defined for a specific version
  2. Product-level - Used when no version-level announcement exists for a product
  3. Config-level - Fallback announcement shown across all products/versions when no specific override is defined

Add the announcement property directly to items in the products: or versions: lists in your docs.yml file:

docs.yml
1# Config-level announcement (fallback)
2announcement:
3 message: "Welcome to our documentation!"
4
5products:
6 - display-name: Docs
7 path: ./products/docs/docs.yml
8 # Product-level announcement
9 announcement:
10 message: "Docs product is in beta."
11
12 versions:
13 - display-name: v1
14 path: ./products/docs/v1/docs.yml
15 # Version-level announcement (highest priority)
16 announcement:
17 message: "v1 is in maintenance mode. Upgrade to v2."

Learn more about configuring announcement banners.


LLM content visibility tags

New <llms-only> and <llms-ignore> tags let you provide additional context for AI assistants while keeping your documentation site (for human readers) clean and focused.

Use <llms-only> to show content exclusively to AI assistants via LLM endpoints (like /llms.txt) while hiding it from your documentation site:

docs/getting-started.mdx
1<llms-only>
2 This technical context is only visible to AI assistants via LLM endpoints.
3</llms-only>

Use <llms-ignore> to show content only on your documentation site while excluding it from LLM endpoints:

docs/getting-started.mdx
1<llms-ignore>
2 <Callout intent="info">
3 This callout appears on your documentation site but not in LLM endpoints.
4 </Callout>
5</llms-ignore>

Learn more about controlling content visibility for humans and agents.