FSharp.Formatting
22.0.0-alpha.2
dotnet add package FSharp.Formatting --version 22.0.0-alpha.2
NuGet\Install-Package FSharp.Formatting -Version 22.0.0-alpha.2
<PackageReference Include="FSharp.Formatting" Version="22.0.0-alpha.2" />
<PackageVersion Include="FSharp.Formatting" Version="22.0.0-alpha.2" />
<PackageReference Include="FSharp.Formatting" />
paket add FSharp.Formatting --version 22.0.0-alpha.2
#r "nuget: FSharp.Formatting, 22.0.0-alpha.2"
#:package FSharp.Formatting@22.0.0-alpha.2
#addin nuget:?package=FSharp.Formatting&version=22.0.0-alpha.2&prerelease
#tool nuget:?package=FSharp.Formatting&version=22.0.0-alpha.2&prerelease
The package is a collection of libraries that can be used for literate programming
with F# (great for building documentation) and for generating library documentation
from inline code comments. The key components are Markdown parser, tools for formatting
F# code snippets, including tool tip type information and a tool for generating
documentation from library metadata.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- FSharp.Compiler.Service (= 43.10.100)
NuGet packages (7)
Showing the top 5 NuGet packages that depend on FSharp.Formatting:
| Package | Downloads |
|---|---|
|
FsReveal
FsReveal parses markdown or F# script files and generates reveal.js slides. |
|
|
Yaaf.AdvancedBuilding
Yaaf.AdvancedBuilding is a loose collection of build scripts. The benefit is that you can automatically update your build by updating this package, when you don't need your own crazy build script. But even than it is possible that you could re-use some scripts within this package. |
|
|
FsLab.Runner
This package contains a library for turning FsLab experiments written as script files into HTML and LaTeX reports. The easiest way to use the library is to use the 'FsLab Journal' Visual Studio template. |
|
|
FSharp.Markdown.Pdf
A F# implementation that uses the Markdown parser from FSharp.Formatting and formats the output into PDF using PdfSharp-MigraDoc. |
|
|
Farango
Farango is a client for ArangoDB written in F#. |
GitHub repositories (3)
Showing the top 3 popular GitHub repositories that depend on FSharp.Formatting:
| Repository | Stars |
|---|---|
|
commandlineparser/commandline
The best C# command line parser that brings standardized *nix getopt style, for .NET. Includes F# support
|
|
|
dotnet/csharpstandard
Working space for ECMA-TC49-TG2, the C# standard committee.
|
|
|
exercism/v3
The work-in-progress project for developing v3 tracks
|
| Version | Downloads | Last Updated |
|---|---|---|
| 22.0.0-alpha.2 | 25 | 3/13/2026 |
| 22.0.0-alpha.1 | 33 | 3/5/2026 |
| 21.0.0 | 1,381 | 11/12/2025 |
| 21.0.0-beta-005 | 910 | 4/23/2025 |
| 21.0.0-beta-004 | 1,230 | 11/20/2024 |
| 21.0.0-beta-003 | 1,222 | 8/16/2024 |
| 21.0.0-beta-002 | 212 | 6/19/2024 |
| 21.0.0-beta-001 | 215 | 6/6/2024 |
| 20.0.1 | 12,427 | 5/31/2024 |
| 20.0.0 | 1,740 | 2/14/2024 |
| 20.0.0-beta-002 | 311 | 2/8/2024 |
| 20.0.0-beta-001 | 228 | 1/31/2024 |
| 20.0.0-alpha-019 | 209 | 1/29/2024 |
| 20.0.0-alpha-018 | 248 | 1/10/2024 |
| 20.0.0-alpha-017 | 231 | 1/9/2024 |
| 20.0.0-alpha-016 | 355 | 12/7/2023 |
| 20.0.0-alpha-015 | 262 | 12/6/2023 |
| 20.0.0-alpha-014 | 285 | 11/22/2023 |
| 20.0.0-alpha-013 | 270 | 11/21/2023 |
| 20.0.0-alpha-012 | 278 | 11/17/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.