Fantomas.Core
8.0.0-beta-001
dotnet add package Fantomas.Core --version 8.0.0-beta-001
NuGet\Install-Package Fantomas.Core -Version 8.0.0-beta-001
<PackageReference Include="Fantomas.Core" Version="8.0.0-beta-001" />
<PackageVersion Include="Fantomas.Core" Version="8.0.0-beta-001" />
<PackageReference Include="Fantomas.Core" />
paket add Fantomas.Core --version 8.0.0-beta-001
#r "nuget: Fantomas.Core, 8.0.0-beta-001"
#:package Fantomas.Core@8.0.0-beta-001
#addin nuget:?package=Fantomas.Core&version=8.0.0-beta-001&prerelease
#tool nuget:?package=Fantomas.Core&version=8.0.0-beta-001&prerelease
Fantomas

An opinionated F# source code formatter.
dotnet tool install fantomas
Documentation is available at https://fsprojects.github.io/fantomas/docs/index.html
If you point a coding agent at Fantomas, give it llms.txt for an index of the documentation, or llms-full.txt for all of it in one file.
Contributing Guidelines
See the Contribution Guidelines and our contributors documentation
| 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 | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. 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.0
- Fantomas.FCS (>= 8.0.0-beta-001)
- FSharp.Core (>= 10.0.100)
- System.Collections.Immutable (>= 10.0.6)
- System.Diagnostics.DiagnosticSource (>= 10.0.6)
- System.Memory (>= 4.6.3)
- System.Runtime (>= 4.3.1)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Fantomas.Core:
| Package | Downloads |
|---|---|
|
Myriad.Core
Core Myriad library used for developing plugins |
|
|
Fantomas.Extras
Utility package for Fantomas |
|
|
WoofWare.Whippet.Fantomas
Helpers for accessing Fantomas syntax trees. |
|
|
Fabulous.AST
Fabulous.AST, an Abstract Syntax Tree (AST) Domain Specific Language (DSL) for F#. |
|
|
Partas.Feliz.Generator
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 8.0.0-beta-001 | 69 | 9/1/2026 |
| 8.0.0-alpha-026 | 128 | 8/29/2026 |
| 8.0.0-alpha-025 | 83 | 8/28/2026 |
| 8.0.0-alpha-024 | 70 | 8/28/2026 |
| 8.0.0-alpha-023 | 82 | 8/28/2026 |
| 8.0.0-alpha-022 | 87 | 8/27/2026 |
| 8.0.0-alpha-021 | 77 | 8/27/2026 |
| 8.0.0-alpha-020 | 78 | 8/27/2026 |
| 8.0.0-alpha-019 | 88 | 8/26/2026 |
| 8.0.0-alpha-018 | 83 | 8/26/2026 |
| 8.0.0-alpha-017 | 84 | 8/25/2026 |
| 8.0.0-alpha-016 | 88 | 8/25/2026 |
| 8.0.0-alpha-015 | 85 | 8/24/2026 |
| 8.0.0-alpha-014 | 96 | 8/20/2026 |
| 8.0.0-alpha-013 | 86 | 8/19/2026 |
| 8.0.0-alpha-012 | 146 | 4/16/2026 |
| 8.0.0-alpha-011 | 127 | 4/15/2026 |
| 8.0.0-alpha-010 | 122 | 4/15/2026 |
| 8.0.0-alpha-009 | 134 | 4/3/2026 |
| 7.0.6 | 1,077 | 8/19/2026 |
### Changed
- `=`, `>`, `<`, `%` and `%%` cannot start a line at the column of their left-hand side: there the parser reads `=`, `>` and `<` as the `=` of a binding, and reads `%` and `%%` inside a quotation as a splice. Fantomas already kept them off that column, but did so with the layout that keeps the right-hand side beside the operator whenever it is short enough to fit, which needs the page width and a column count to predict and moves a `0` around when an unrelated part of the line changes length. It now follows the rule proposed in [fsharp/fslang-design#836](https://github.com/fsharp/fslang-design/issues/836): the expression fits on one line, or it does not and the operator stays with the left-hand side while the right-hand side moves one level in, or the left-hand side itself spans several lines, in which case the operator and the right-hand side each take a line of their own. `fsharp_multiline_bracket_style = stroustrup` still overrides this for a right-hand side that opens a bracket, which keeps hugging the operator. This is the first beta of `8.0.0`: the style guide for this is not settled yet, so give it a try and report back on [the design issue](https://github.com/fsharp/fslang-design/issues/836) if something reads worse than what it replaces. [#3434](https://github.com/fsprojects/fantomas/pull/3434)