- Bring your own API Spec
+ Bring your own API spec
@@ -144,7 +144,7 @@ subtitle: A website builder for beautiful agent and developer-friendly docs.
- Fern's MCP Server
+ Fern's MCP server
diff --git a/fern/products/docs/pages/integrations/analytics/google.mdx b/fern/products/docs/pages/integrations/analytics/google.mdx
index 78401e54..da476638 100644
--- a/fern/products/docs/pages/integrations/analytics/google.mdx
+++ b/fern/products/docs/pages/integrations/analytics/google.mdx
@@ -11,7 +11,7 @@ Fern supports integrating with both [Google Analytics 4](https://developers.goog
Before you begin, ensure you have a Google Analytics 4 property ID. This ID is typically in the format `G-XXXXXXXXXX`.
-### Integration Steps
+### Integration steps
1. Open your `docs.yml` file.
2. Add your Google Analytics 4 property ID under the `measurement-id` key.
@@ -44,7 +44,7 @@ analytics:
To use Google Tag Manager, obtain a container ID from your Google Tag Manager account. This ID follows the format `GTM-XXXXXX`.
-### Integration Steps
+### Integration steps
1. Open your `docs.yml` file.
2. Add your Google Tag Manager container ID under the container-id key.
diff --git a/fern/products/docs/pages/integrations/feature-flags.mdx b/fern/products/docs/pages/integrations/feature-flags.mdx
index 5559e785..89e7cf2c 100644
--- a/fern/products/docs/pages/integrations/feature-flags.mdx
+++ b/fern/products/docs/pages/integrations/feature-flags.mdx
@@ -8,7 +8,7 @@ description: Learn how to use Feature Flags in your Fern documentation
Fern supports conditional rendering of documentation content using feature flags, powered by [LaunchDarkly](https://app.launchdarkly.com/signup) integration. Control visibility of documentation sections based on feature flag states for different release stages or user segments.
-## Use Cases
+## Use cases
Feature flags in documentation are particularly useful for:
@@ -44,7 +44,7 @@ navigation:
To read more about `fallbackValue` and `match`, see the [LaunchDarkly documentation](https://launchdarkly.com/docs/guides/flags/testing-code#fallback-values).
-## Using Feature Flags in MDX
+## Using feature flags in MDX
Use the `
` component to conditionally render content:
@@ -63,7 +63,7 @@ Use the `` component to conditionally render content:
```
-### Component Properties
+### Component properties
Name of the feature flag to check against
@@ -77,7 +77,7 @@ Use the `` component to conditionally render content:
Default value if the feature flag is not defined
-## Example: Complete Configuration
+## Example: complete configuration
```yaml
# docs.yml
@@ -101,7 +101,7 @@ navigation:
fallbackValue: standard
```
-## Real-time Evaluation
+## Real-time evaluation
Feature flags are client-side only. The information is only visually hidden when the feature flag is evaluated as false.
@@ -109,10 +109,10 @@ If you toggle a feature flag on in the LaunchDarkly dashboard, the content will
Conversely, if you toggle a feature flag off in the LaunchDarkly dashboard, the content will be hidden immediately.
-## Server-side Evaluation
+## Server-side evaluation
Feature flags are client-side only. Want to request server-side evaluation? [Let us know](https://github.com/fern-api/fern/issues) by filing a feature request.
-## Additional Feature Flag Providers
+## Additional feature flag providers
-Want to request a new feature flag provider? [Let us know](https://github.com/fern-api/fern/issues) by filing a feature request.
\ No newline at end of file
+Want to request a new feature flag provider? [Let us know](https://github.com/fern-api/fern/issues) by filing a feature request.
diff --git a/fern/products/docs/pages/navigation/overview.mdx b/fern/products/docs/pages/navigation/overview.mdx
index 25a7ffd0..e69b8a38 100644
--- a/fern/products/docs/pages/navigation/overview.mdx
+++ b/fern/products/docs/pages/navigation/overview.mdx
@@ -7,11 +7,12 @@ description: Set up the navigation for your documentation site built with Fern D
Every Fern Docs website has a special configuration file called `docs.yml`. Use this file to configure the navigation for your documentation site.
-### Example Configuration
+### Example configuration
Here's a complete example of a `docs.yml` file:
+
```yaml
# yaml-language-server: $schema=https://schema.buildwithfern.dev/docs-yml.json
navigation:
@@ -34,30 +35,31 @@ navbar-links:
## Sections, contents, and pages
-The navigation organizes your documentation in the left-side nav bar. You can create sections for grouping related content. Each `section` has a name and a list of `contents`. The sections appear in the left-side nav bar in the order that they are listed in `docs.yml`.
+The navigation organizes your documentation in the left-side nav bar. You can create sections for grouping related content. Each `section` has a name and a list of `contents`. The sections appear in the left-side nav bar in the order listed in `docs.yml`.
In `contents`, list your pages with names and corresponding file paths. The supported file types for pages are `.md` or `.mdx`.
-A basic navigation configuration with two sections is shown below. The first section is called `Introduction` and contains a single page called `My Page`. The second section is called **API Reference**. This is a special type of section that's automatically generated by Fern, and you do not need to add any pages to it by hand. For more information, see the [Generate API Reference](/learn/docs/api-references/generate-api-ref) page.
+A basic navigation configuration with two sections is shown below. The first section is called `Introduction` and contains a single page called `My Page`. The second section is called **API Reference**. This is a special type of section that's automatically generated by Fern, and you don't need to add any pages to it by hand. For more information, see the [Generate API Reference](/learn/docs/api-references/generate-api-ref) page.
+{/* */}
```yaml Example navigation config
navigation:
- section: Introduction
contents:
- - page: My Page
+ - page: My page
path: ./pages/my-page.mdx
- api: API Reference
```
-
+{/* */}
If you want to add another page to an existing section, create an `.md` or `.mdx` file. Then in `docs.yml`, create a new `page` in the `contents` list for that section, providing the path to the `.md` or `.mdx` file you created. Example:
-
+{/* */}
```yaml Example navigation config
navigation:
- section: Introduction
contents:
- - page: My Page
+ - page: My page
path: ./pages/my-page.mdx
- - page: Another Page
+ - page: Another page
path: ./pages/another-page.mdx
- api: API Reference
```
@@ -68,34 +70,37 @@ To add another section, add another `section` to the `navigation`. Example:
navigation:
- section: Introduction
contents:
- - page: My Page
+ - page: My page
path: ./pages/my-page.mdx
- api: API Reference
- - section: Help Center
+ - section: Help center
contents:
- - page: Contact Us
+ - page: Contact us
path: contact-us.mdx
```
+{/* */}
### Hiding content
-To hide a page or an entire section of your docs, add `hidden: true`. A hidden page or section will still be discoverable using the exact URL, but it will be excluded from search and will not be indexed.
+To hide a page or an entire section of your docs, add `hidden: true`. A hidden page or section will still be discoverable using the exact URL, but it will be excluded from search and won't be indexed.
+{/* */}
```yaml Example navigation config with additional section {7, 10}
navigation:
- section: Introduction
contents:
- - page: My Page
+ - page: My page
path: ./pages/my-page.mdx
- - page: Hidden Page
+ - page: Hidden page
hidden: true
path: ./pages/my-hidden-page.mdx
- - section: Hidden Sections
+ - section: Hidden sections
hidden: true
contents:
- - page: Another Hidden Page
+ - page: Another hidden page
path: ./pages/also-hidden.mdx
```
+{/* */}
### Section and page availability
@@ -105,17 +110,17 @@ Options are: `stable`, `generally-available`, `in-development`, `pre-release`, `
```yaml Availability {3, 11, 14}
navigation:
- - section: Developer Resources
+ - section: Developer resources
availability: generally-available
contents:
- - page: Code Examples # Inherits generally-available
+ - page: Code examples # Inherits generally-available
path: ./pages/code-examples.mdx
- - page: CLI Tools # Inherits generally-available
+ - page: CLI tools # Inherits generally-available
path: ./pages/cli-tools.mdx
- - page: Testing Framework
+ - page: Testing framework
path: ./pages/testing-framework.mdx
availability: beta # Overrides section-level availability
- - page: Performance Monitoring
+ - page: Performance monitoring
path: ./pages/performance-monitoring.mdx
availability: in-development # Overrides section-level availability
```
@@ -127,20 +132,22 @@ navigation:
To add an overview page to a section, add a `path` property to the section.
+{/* */}
```yaml Example section with an overview {7}
navigation:
- section: Introduction
contents:
- - page: My Page
+ - page: My page
path: ./pages/my-page.mdx
- section: Guides
path: ./pages/guide-overview.mdx
contents:
- - page: Simple Guide
+ - page: Simple guide
path: ./pages/guides/simple.mdx
- - page: Complex Guide
+ - page: Complex guide
path: ./pages/guides/complex.mdx
```
+{/* */}
## Nested sections
@@ -152,15 +159,15 @@ navigation:
layout:
- section: Learn
contents:
- - section: Key Concepts
+ - section: Key concepts
contents:
- page: Embeddings
path: ./docs/pages/embeddings.mdx
- - page: Prompt Engineering
+ - page: Prompt engineering
path: ./docs/pages/prompts.mdx
- section: Generation
contents:
- - page: Command Nightly
+ - page: Command nightly
path: ./docs/pages/command.mdx
- page: Likelihood
path: ./docs/pages/likelihood.mdx
@@ -177,11 +184,11 @@ This helps keep the navigation tidy when you have many sections or want to highl
```yaml {7} Example config with collapsed section
navigation:
- - section: Getting Started
+ - section: Getting started
contents:
- page: Introduction
path: ./pages/intro.mdx
- - section: Advanced Topics
+ - section: Advanced topics
collapsed: true
contents:
- page: Custom CSS
@@ -194,31 +201,35 @@ navigation:
For icons to appear next to sections and pages, add the `icon` key. The value should be a valid [Font Awesome icon](https://fontawesome.com/icons) name. Pro and Brand Icons from Font Awesome are supported.
+{/* */}
```yaml Example navigation config with icons
navigation:
- section: Home
icon: fa-regular fa-home
contents:
- - page: My Page
+ - page: My page
icon: fa-regular fa-file
path: ./pages/my-page.mdx
- api: API Reference
icon: fa-regular fa-puzzle
```
+{/* */}
## Links
You can add a link to an external page within your sidebar navigation with the following configuration:
+{/* */}
```yaml title="docs.yml"
navigation:
- section: Home
contents:
- page: Introduction
path: ./intro.mdx
- - link: Our YouTube Channel
+ - link: Our YouTube channel
href: https://www.youtube.com/
```
+{/* */}
@@ -229,13 +240,15 @@ navigation:
Within the navigation, you can add `tabs`. Tabs are used to group sections together. The example below shows tabs for `Help Center`, `API Reference`, and an external link to `Github`. Each tab has a `title` and `icon`. [Browse the icons available](https://fontawesome.com/icons) from Font Awesome. Pro and Brand Icons are supported.
+{/* */}
+
```yaml
tabs:
api:
display-name: API Reference
icon: puzzle
help:
- display-name: Help Center
+ display-name: Help center
icon: home
github:
display-name: GitHub
@@ -247,17 +260,18 @@ tabs:
layout:
- section: Introduction
contents:
- - page: My Page
+ - page: My page
path: my-page.mdx
- api: API Reference
- tab: help
layout:
- - section: Help Center
+ - section: Help center
contents:
- - page: Contact Us
+ - page: Contact us
path: contact-us.mdx
- tab: github
```
+{/* */}
Here's an example of what the Tabs implementation looks like:
@@ -277,11 +291,11 @@ layout:
## Versions
-If you have multiple versions of your documentation, you can introduce a dropdown version selector by specifying the `versions`. For more information, check out our [documentation on versioning](/learn/docs/building-your-docs/versioning).
+If you have multiple versions of your documentation, you can introduce a dropdown version selector by specifying the `versions`. For more information, check out the [documentation on versioning](/learn/docs/building-your-docs/versioning).
## Product switching
-If you have multiple products in your documentation, you can introduce a dropdown product selector by creating separate product configuration files. Each product can contain its own distinct versions, tabs, sections, pages, and API references, though products can also share content.
+If you have multiple products in your documentation, you can introduce a [dropdown product selector](/learn/docs/configuration/products) by creating separate product configuration files. Each product can contain its own distinct versions, tabs, sections, pages, and API References, though products can also share content.
```yaml {2-3, 7-8}
@@ -298,5 +312,3 @@ products:
subtitle: Product B subtitle # optional
```
-
-For more information about setting up this up, check out our [documentation on product switching](/learn/docs/configuration/products).
\ No newline at end of file