You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: fern/products/dashboard/pages/domains.mdx
+12-1Lines changed: 12 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,4 +52,15 @@ Once you've added the DNS records, return to the Fern Dashboard to verify your d
52
52
53
53
<Tip>Check that you can access your new docs site from a mobile device or incognito browser.</Tip>
54
54
</Step>
55
-
</Steps>
55
+
</Steps>
56
+
57
+
## Multi-source settings
58
+
59
+
For [multi-source sites](/learn/docs/preview-publish/multi-source) — where multiple repositories publish to the same custom domain on different sub-paths — the Dashboard exposes a **Multi-repo settings** card on the domain's **Settings** tab. These settings apply to the whole domain, not per sub-path.
60
+
61
+
The card configures:
62
+
63
+
- **Default path** — sets where users land at the bare root of the domain. Useful when a Fern-managed page serves as the root.
64
+
- **Search / Ask AI scope** — controls whether searches in one sub-path return results across all sub-paths (unified) or stay scoped to that sub-path (hierarchical).
65
+
66
+
See [Multi-source docs](/learn/docs/preview-publish/multi-source) for the full setup walkthrough.
Configure default path and search scope for domains shared across multiple repositories.
49
+
</Card>
43
50
</CardGroup>
44
51
45
52
## Metrics
@@ -166,6 +173,7 @@ Visit your team's [Dashboard](https://dashboard.buildwithfern.com/) and complete
166
173
-[Member permissions](/learn/dashboard/configuration/permissions): Assign Admin, Editor, or Viewer roles to manage Dashboard and CLI access.
167
174
-[Integrate GitHub](/learn/dashboard/configuration/github-repo): Connect your GitHub repository to your project.
168
175
-[Enable Ask Fern](/learn/docs/ai-features/ask-fern/overview): Set up AI-powered chat for your documentation.
176
+
-[Multi-source settings](/learn/dashboard/configuration/custom-domains#multi-source-settings): Configure default path and search scope for domains shared across multiple repositories.
Copy file name to clipboardExpand all lines: fern/products/docs/pages/ask-fern/what-is-ask-fern.mdx
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,6 +26,10 @@ Ask Fern is Fern's AI Search feature, powered by [Claude 4.6 Sonnet](https://www
26
26
<Info>
27
27
Enabling Ask Fern triggers an automatic reindex of your content. This typically takes a few minutes, though sites with extensive custom components may take longer. Once this process is finished, the Ask Fern side panel will appear on your site.
28
28
</Info>
29
+
30
+
<Note>
31
+
For [multi-source sites](/learn/docs/preview-publish/multi-source), the Dashboard also controls whether Ask Fern answers from a single sub-path's content (hierarchical) or from all sub-paths on the domain (unified).
32
+
</Note>
29
33
</Step>
30
34
<Steptitle="Connect Slack">
31
35
Connect Ask Fern to [Slack](/learn/docs/ai-features/ask-fern/slack-app) so your users can ask questions directly from chat.
Copy file name to clipboardExpand all lines: fern/products/docs/pages/customization/search.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ It includes built-in dropdown filters that appear dynamically based on your site
31
31
</video>
32
32
</Frame>
33
33
34
-
Fern can scope search to the user's current context. For sites with multiple products or versions, set [`default-search-filters: true`](/learn/docs/configuration/site-level-settings#settingsdefault-search-filters) in your `docs.yml` to filter results to the user's current product and version (users can still remove these filters to broaden the search). For sites with [localized docs](/learn/docs/localization/overview), search is automatically scoped to the reader's active language.
34
+
Fern can scope search to the user's current context. For sites with multiple products or versions, set [`default-search-filters: true`](/learn/docs/configuration/site-level-settings#settingsdefault-search-filters) in your `docs.yml` to filter results to the user's current product and version (users can still remove these filters to broaden the search). For sites with [localized docs](/learn/docs/localization/overview), search is automatically scoped to the reader's active language. For [multi-source sites](/learn/docs/preview-publish/multi-source), search scope across sub-paths (hierarchical vs. unified) is configured per-domain in the [Fern Dashboard](https://dashboard.buildwithfern.com).
35
35
36
36
If you're using [Ask Fern](/learn/docs/ai-features/ask-fern/overview) (AI search), the search box also functions as your site's chat window.
Copy file name to clipboardExpand all lines: fern/products/docs/pages/preview-publish/multi-source.mdx
+31-22Lines changed: 31 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,16 +6,16 @@ description: Learn how to set up multi-source documentation so independent teams
6
6
7
7
<Markdownsrc="/snippets/enterprise-plan.mdx" />
8
8
9
-
Multi-source documentation lets multiple teams publish to the same custom domain from independent repositories. Each repository has its own `docs.yml` and content, while a shared [global theme](/learn/docs/customization/global-themes) keeps branding consistent across every sub-path.
9
+
Multi-source documentation publishes a single docs site to a custom domain, split into multiple sub-paths. Each sub-path is sourced from its own repository, so teams ship updates independently while a shared [global theme](/learn/docs/customization/global-themes) keeps branding consistent across the site.
10
10
11
11
## How it works
12
12
13
-
Each repository owns a unique basepath on the shared domain. Running `fern generate --docs`in one repository updates only its sub-path — every other sub-path is untouched.
13
+
Each repository declares a unique basepath under the shared domain in its `docs.yml`. Running `fern generate --docs`from that repository updates only its sub-path — every other sub-path stays untouched.
14
14
15
15
Three pieces of configuration make this work:
16
16
17
17
1.**`multi-source: true`** set on the instance in each repository's `docs.yml`, with `url` and `custom-domain` ending in the same basepath.
18
-
2.**[Global themes](/learn/docs/customization/global-themes)**, referenced by name in each `docs.yml`, deliver shared branding from a central source.
18
+
2.**[Global themes](/learn/docs/customization/global-themes)** live in a dedicated control repository and are referenced by name from each source repository's `docs.yml`.
19
19
3.**Multi-repo settings** in the [Fern Dashboard](https://dashboard.buildwithfern.com) control the domain's default path and search/Ask AI scope.
20
20
21
21
For example, NVIDIA's docs are split across multiple independent repositories, each publishing to its own sub-path on `docs.nvidia.com`:
@@ -25,15 +25,19 @@ For example, NVIDIA's docs are split across multiple independent repositories, e
Each sub-path is published independently, but end users see a single unified site. The root `docs.nvidia.com` itself is a separate site outside the Fern setup — multi-source covers only the sub-paths. A Fern-published landing page is optional ([example](#example-a-live-multi-source-site)), and any combination of sub-paths works, including just two.
28
+
Each sub-path is published independently, but end users see a single unified site.
29
+
30
+
<Tip>
31
+
The root `docs.nvidia.com` itself is a separate site outside the Fern setup — multi-source covers only the sub-paths. A Fern-published landing page is optional ([example](#example-a-live-multi-source-site)), and any combination of sub-paths works, including just two.
32
+
</Tip>
29
33
30
34
## Set up multi-source docs
31
35
32
36
<Steps>
33
37
34
38
<Steptitle="Create a control repository for the global theme">
35
39
36
-
The control repository is a dedicated Fern project whose only job is to house your global theme — the shared logo, colors, fonts, layout, and site-level settings that every team repository will inherit. Define those settings in its `docs.yml`, then export and upload the theme:
40
+
The control repository is a dedicated Fern project that holds your global theme — the shared logo, colors, fonts, layout, and site-level settings that every source repository inherits. Define those settings in its `docs.yml`, then export and upload the theme:
37
41
38
42
```bash
39
43
fern docs theme export
@@ -92,20 +96,19 @@ Only the sub-path owned by that repository is updated. Every other sub-path is u
92
96
93
97
<Steptitle="Configure domain settings in the Dashboard">
94
98
95
-
Open the [Fern Dashboard](https://dashboard.buildwithfern.com) and select your top-level domain (e.g., `docs.example.com`) — these settings apply to the whole domain, not per sub-path. In the **Settings** tab, navigate to the **Multi-repo settings** card and configure:
99
+
Open the [Fern Dashboard](https://dashboard.buildwithfern.com) and select your top-level domain (e.g., `docs.example.com`) — these settings apply to the whole domain, not per sub-path. In the **Settings** tab, navigate to the **Multi-repo settings** card.
100
+
101
+
Configure the following:
96
102
97
-
-**Default path***(optional)* — sets where users land when they visit the bare root of your domain. Set this when a Fern-managed page should serve as the root: for example, if your homepage lives at the `/home` sub-path, set the default path to `/home` so `docs.example.com` redirects to `docs.example.com/home`. Skip this if the root isn't Fern-managed, like NVIDIA's `docs.nvidia.com` (a separate marketing site outside the Fern setup).
98
-
-**Search / Ask AI behavior** — controls how [Ask Fern](/learn/docs/ai-features/ask-fern/overview) and search work across sub-paths.
103
+
-**Default path***(optional)* — sets where users land when they visit the bare root of your domain. Set this when a Fern-managed page should serve as the root. For example, if your homepage lives at the `/home` sub-path, set the default path to `/home` so `docs.example.com` redirects to `docs.example.com/home`. Skip this if the root isn't Fern-managed, like NVIDIA's `docs.nvidia.com` (a separate marketing site outside the Fern setup).
104
+
-**Search / Ask AI behavior** — controls how [Ask Fern](/learn/docs/ai-features/ask-fern/overview) and search work across sub-paths. Two modes are available:
105
+
-**Hierarchical** — searches under `/subpath` only return results from `/subpath` and below. Use when each sub-path covers a distinct product and users expect scoped results.
106
+
-**Unified** — searches under any sub-path return results from all sub-paths. Use when the sub-paths are parts of a single product and users benefit from cross-cutting results.
99
107
100
108
<Frame>
101
109

102
110
</Frame>
103
111
104
-
Two search modes are available:
105
-
106
-
-**Hierarchical** — searches under `/subpath` only return results from `/subpath` and below. Use this when each sub-path covers a distinct product and users expect scoped results.
107
-
-**Unified** — searches under any sub-path return results from all sub-paths. Use this when the sub-paths are parts of a single product and users benefit from cross-cutting results.
108
-
109
112
</Step>
110
113
111
114
</Steps>
@@ -118,15 +121,21 @@ Browse the live site at [multi-source.docs.buildwithfern.com](https://multi-sour
118
121
119
122
This is the alternative shape to NVIDIA's setup: a Fern-managed homepage at the bare root, plus team sub-paths underneath. The example uses six independent `fern/` projects on one shared domain — a homepage at `/`, a `/seeds` team hub with two nested sub-children, and standalone `/greenhouses` and `/nursery` teams:
The unit is one `fern/` folder per sub-path, not one repository per sub-path. A repo-per-sub-path layout (often one per team) is the most common shape, but multiple `fern/` folders in a single repo work too.
138
+
</Note>
130
139
131
140
All six projects share `global-theme: plantstore-theme` and set `multi-source: true` — they differ only in their basepath. Sub-paths can themselves contain nested sub-paths: `/seeds/sunflower` and `/seeds/tomato` are independently published projects that live under `/seeds`.
0 commit comments