fsdocs-tool 23.0.0-alpha.6

This is a prerelease version of fsdocs-tool.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet tool install --global fsdocs-tool --version 23.0.0-alpha.6
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local fsdocs-tool --version 23.0.0-alpha.6
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=fsdocs-tool&version=23.0.0-alpha.6&prerelease
                    
nuke :add-package fsdocs-tool --version 23.0.0-alpha.6
                    

fsdocs and FSharp.Formatting Build and Test NuGet

FSharp.Formatting is a set of libraries and tools for processing F# script files and markdown, and for generating API documentation from XML doc comments. The primary tool is fsdocs.

Full documentation: https://fsprojects.github.io/FSharp.Formatting/

The fsdocs tool

fsdocs builds a static documentation site from the markdown files and F# scripts in your docs folder, plus API reference pages for the projects in your solution.

dotnet tool install fsdocs-tool
dotnet fsdocs build
dotnet fsdocs watch
  • init creates a docs folder with a default index.md.
  • build processes the docs folder and writes the site to output.
  • watch builds the site, serves it locally and rebuilds on every change.
  • convert converts individual markdown and script files.

Run dotnet fsdocs <command> --help to see the options of a command, or read the command line guide.

The libraries

The same functionality is available as NuGet packages for use from your own code:

  • FSharp.Formatting bundles the markdown parser, F# code formatter, literate programming support and API doc generator.
  • FSharp.Formatting.Literate only contains the literate programming support and its dependencies.

See Markdown parser, F# code formatting and literate programming for examples.

Contributing

See CONTRIBUTING.md for how to build the repository and run the tool locally.

Maintainer(s)

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
23.0.0-alpha.7 78 9/15/2026
23.0.0-alpha.6 61 9/15/2026
23.0.0-alpha.5 34 9/15/2026
23.0.0-alpha.4 309 9/13/2026
23.0.0-alpha.3 47 9/13/2026
23.0.0-alpha.2 115 9/10/2026
23.0.0-alpha.1 341 9/8/2026
22.2.0 2,487 8/31/2026
22.1.0 19,333 5/27/2026
22.0.1 995 5/9/2026
22.0.0 2,893 4/4/2026
22.0.0-alpha.3 1,195 4/2/2026
22.0.0-alpha.2 1,057 3/13/2026
22.0.0-alpha.1 93 3/5/2026
21.0.0 20,760 11/12/2025
21.0.0-beta-005 3,186 4/23/2025
21.0.0-beta-004 1,857 11/20/2024
21.0.0-beta-003 654 8/16/2024
21.0.0-beta-002 9,030 6/19/2024
21.0.0-beta-001 1,942 6/6/2024
Loading failed

### Fixed

- The Markdown output marks the namespace of the page in the menu. The menu of the page was overwritten by the site-wide one, which marks nothing, the way the HTML output was until 23.0.0-alpha.5. [#1330](https://github.com/fsprojects/FSharp.Formatting/pull/1330)
- API docs keep the comment of a member whose signature has a type abbreviation of a function type in the range of a function type, such as `(string -> IsPathIgnored) * (unit -> int)` with `type IsPathIgnored = string -> bool`. Reading the member threw `ArgumentOutOfRangeException` and the comment was dropped. The abbreviation is now shown under its own name, as it is everywhere else. [#1327](https://github.com/fsprojects/FSharp.Formatting/issues/1327)

### Changed

- The API Reference section of the menu lists the namespaces on every page of the site. The content pages got a single "All Namespaces" link instead, and only a collection named `FSharp.Core` got the list there, which made the menu of a content page a different menu from the one of an API page. No entry is marked active while the reader is on a content page. [#1330](https://github.com/fsprojects/FSharp.Formatting/pull/1330)
- The header of that section reads "API Reference" on the API pages as well, where 23.0.0-alpha.5 made it "Namespaces". A menu template sees the same `{{fsdocs-menu-header-content}}` and `{{fsdocs-menu-header-id}}` (`api_reference`) on every page of the site now. The built-in menu keeps the header as the link to the index of all namespaces. [#1330](https://github.com/fsprojects/FSharp.Formatting/pull/1330)