fsdocs-tool
22.0.0-alpha.2
dotnet tool install --global fsdocs-tool --version 22.0.0-alpha.2
dotnet new tool-manifest
dotnet tool install --local fsdocs-tool --version 22.0.0-alpha.2
#tool dotnet:?package=fsdocs-tool&version=22.0.0-alpha.2&prerelease
nuke :add-package fsdocs-tool --version 22.0.0-alpha.2
The 'dotnet fsdocs' documentation generation tool for F# projects. Install use 'dotnet tool add fsdocs-tool'. See the project site for documentation.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 22.0.0-alpha.2 | 28 | 3/13/2026 |
| 22.0.0-alpha.1 | 38 | 3/5/2026 |
| 21.0.0 | 9,489 | 11/12/2025 |
| 21.0.0-beta-005 | 3,030 | 4/23/2025 |
| 21.0.0-beta-004 | 1,793 | 11/20/2024 |
| 21.0.0-beta-003 | 562 | 8/16/2024 |
| 21.0.0-beta-002 | 7,531 | 6/19/2024 |
| 21.0.0-beta-001 | 1,823 | 6/6/2024 |
| 20.0.1 | 41,041 | 5/31/2024 |
| 20.0.0 | 8,653 | 2/14/2024 |
| 20.0.0-beta-002 | 1,384 | 2/8/2024 |
| 20.0.0-beta-001 | 822 | 1/31/2024 |
| 20.0.0-alpha-019 | 615 | 1/29/2024 |
| 20.0.0-alpha-018 | 3,882 | 1/10/2024 |
| 20.0.0-alpha-017 | 451 | 1/9/2024 |
| 20.0.0-alpha-016 | 1,784 | 12/7/2023 |
| 20.0.0-alpha-015 | 285 | 12/6/2023 |
| 20.0.0-alpha-014 | 835 | 11/22/2023 |
| 20.0.0-alpha-013 | 754 | 11/21/2023 |
| 1.0.0 | 298 | 11/21/2023 |
### Added
* * Search dialog now auto-focuses the search input when opened, clears on close, and can be triggered with `Ctrl+K` / `Cmd+K` in addition to `/`.
* * Add `dotnet fsdocs convert` command to convert a single `.md`, `.fsx`, or `.ipynb` file to HTML (or another output format) without building a full documentation site. [#811](https://github.com/fsprojects/FSharp.Formatting/issues/811)
* * `fsdocs convert` now accepts the input file as a positional argument (e.g. `fsdocs convert notebook.ipynb -o notebook.html`). [#1019](https://github.com/fsprojects/FSharp.Formatting/pull/1019)
* * `fsdocs convert` infers the output format from the output file extension when `--outputformat` is not specified (e.g. `-o out.md` implies `--outputformat markdown`). [#1019](https://github.com/fsprojects/FSharp.Formatting/pull/1019)
* * `fsdocs convert` now accepts `-o` as a shorthand for `--output`. [#1019](https://github.com/fsprojects/FSharp.Formatting/pull/1019)
* * Added full XML doc comments (`<summary>`, `<param>`) to `Literate.ParseAndCheckScriptFile` and `Literate.ParseScriptString` to match the documentation style of the other `Literate.Parse*` methods.
### Changed
* * Tooltip elements (`div.fsdocs-tip`) now use the [Popover API](https://developer.mozilla.org/en-US/docs/Web/API/Popover_API) (Baseline 2024: Chrome 114+, Firefox 125+, Safari 17+). Tooltips are placed in the browser's top layer — no `z-index` needed, always above all other content. Fixes a positioning bug where tooltips appeared offset when the page was scrolled. The previous `display`-toggle fallback has been removed. Tooltips also fade in with a subtle animation. [#422](https://github.com/fsprojects/FSharp.Formatting/issues/422), [#1061](https://github.com/fsprojects/FSharp.Formatting/pull/1061)
* * Generated code tokens no longer use inline `onmouseover`/`onmouseout` event handlers. Tooltips are now triggered via `data-fsdocs-tip` / `data-fsdocs-tip-unique` attributes and a delegated event listener in `fsdocs-tips.js`. The `popover` attribute is also added to API-doc tooltip divs so they use the same top-layer path. [#1061](https://github.com/fsprojects/FSharp.Formatting/pull/1061)
* * Changed `range` fields in `MarkdownSpan` and `MarkdownParagraph` DU cases from `MarkdownRange option` to `MarkdownRange`, using `MarkdownRange.zero` as the default/placeholder value instead of `None`.
* * When no template is provided (e.g. `fsdocs convert` without `--template`), `fsdocs-tip` tooltip divs are no longer included in the output. Tooltips require JavaScript/CSS from a template to function, so omitting them produces cleaner raw output. [#1019](https://github.com/fsprojects/FSharp.Formatting/pull/1019)
* * Use [`scrollbar-gutter: stable`](https://developer.mozilla.org/en-US/docs/Web/CSS/scrollbar-gutter) (Baseline 2024) on scroll containers (`main`, `#fsdocs-main-menu`, mobile menu, search dialog) to reserve scrollbar space and prevent layout shifts when content changes height. Also adds the missing `overflow-y: auto` to `main` so pages that exceed the viewport height are independently scrollable. [#1087](https://github.com/fsprojects/FSharp.Formatting/issues/1087), [#1088](https://github.com/fsprojects/FSharp.Formatting/pull/1088)
### Fixed
* * `Literate.ParseScriptString` and `Literate.ParsePynbString` used a hardcoded Windows path (`C:/script.fsx`) as the fallback script filename when neither `path` nor `rootInputFolder` is supplied. The fallback is now a simple platform-neutral `script.fsx`.
* * Add regression tests for cross-assembly tooltip resolution (issue [#1085](https://github.com/fsprojects/FSharp.Formatting/issues/1085)): verify that hover tooltips for types whose fields reference types from other assemblies show the correct type names (not `obj`) when `#r` paths resolve correctly.