Every doc page renders a small utility strip between the article body and the footer. The strip hosts the Document History trigger and a "View source on GitHub" link, both configured through one settings block: `bodyFootUtilArea`.

[Dynamic content unavailable in text export]

The History button used to render as a floating element. It now lives inside this area — see [Document History](https://zudo-doc.takazudomodular.com/docs/guides/doc-history) for the feature itself.



## Default configuration

```ts
export const settings = {
  // ...
  githubUrl: "https://github.com/zudolab/zudo-doc",
  docHistory: true,
  bodyFootUtilArea: {
    docHistory: true,
    viewSourceLink: true,
  },
};
```

Both entries default to `true`. Set the whole block to `false` to hide the strip entirely:

```ts
bodyFootUtilArea: false,
```

Top-level `docHistoryUi: false` hides the History button and DocHistory island in this area and disables history JSON generation and the dev proxy. `bodyFootUtilArea.docHistory: true` cannot re-enable it. Git-based metadata and the view-source link are retained. See [dates-only history configuration](https://zudo-doc.takazudomodular.com/docs/guides/doc-history).

## Fields

| Field | Type | Description |
|---|---|---|
| `docHistory` | boolean | Show the Document History trigger inside the strip. Requires top-level `docHistory: true`. |
| `viewSourceLink` | boolean | Show the "View source on GitHub" link. Requires top-level `githubUrl` to be set. |

The strip is only rendered if at least one item is visible. If `docHistory: false` AND `viewSourceLink: false` (or both dependencies are off), the strip disappears and the page footer flows directly under the article.

## View source on GitHub

When `viewSourceLink` is enabled and `githubUrl` is set, each page shows a link to its source `.mdx` file on GitHub. The URL is built as:

```
${githubUrl}/blob/HEAD/${contentDir}/${entryId}
```

where `contentDir` is the page's content directory (for example, `src/content/docs` for the primary locale, `src/content/docs-ja` for an additional locale, or the `docsDir` of the active version) and `entryId` is the page's file path within that directory.

| Page | Resolved URL |
|---|---|
| `/docs/guides/header-navigation` | `https://github.com/…/blob/HEAD/src/content/docs/guides/header-navigation.mdx` |
| `/ja/docs/guides/header-navigation` | `https://github.com/…/blob/HEAD/src/content/docs-ja/guides/header-navigation.mdx` |

[Dynamic content unavailable in text export]

The URL pins to `HEAD` — not a specific branch. GitHub resolves `HEAD` to your repo's default branch, so the link always points at the latest version without hard-coding a branch name.



### Additional-locale fallback pages

If an additional-locale page falls back to primary-locale content, the link still points to the actual file that rendered — the primary-locale file in `src/content/docs/` in that case.

## Hiding a single item

Turn off only the pieces you don't want:

```ts
// Keep history, hide source link
bodyFootUtilArea: {
  docHistory: true,
  viewSourceLink: false,
},
```

```ts
// Hide history, keep source link
bodyFootUtilArea: {
  docHistory: false,
  viewSourceLink: true,
},
```

Toggling `docHistory` here is independent from the top-level `docHistory` flag: the top-level flag controls the overall feature (including build-time generation); the `bodyFootUtilArea.docHistory` flag just controls whether the trigger button appears inside the strip.