Fantomas vs Taplo
Fantomas
fsprojects.github.ioTaplo
taplo.tamasfe.devSide by side
| Figure | Fantomas | Taplo |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Code Formatting Tools | 8.0 (#9) | 7.6 (#24) |
| Purpose | Fantomas is an opinionated formatter for F# source code that formats files based on configuration. | Taplo is a TOML toolkit for validating, formatting, and querying TOML documents. |
Plans
In their own words
Fantomas
Fantomas formats F# source code according to configuration, using default rules based on Microsoft’s F# style guide. Settings are also available for G-Research conventions. It runs as a .NET tool, and local installation is recommended when a repository needs to keep a fixed version. The command line accepts folders or files with `.fs`, `.fsi`, `.fsx`, `.ml` or `.mli` extensions; source files are expected to parse with the F# compiler before formatting. A limited selection of options can be placed in `.editorconfig` for automatic use by the command-line tool. For continuous integration checks, `dotnet fantomas check` reports formatting drift and exits with a failure code when files need formatting. Setup guides are available for JetBrains Rider, Visual Studio Code and Visual Studio, and the official site links to an online tool for trying the formatter and its settings. Fantomas and its library are available under the Apache 2.0 license. The project is described as an fsprojects incubation project. It is free and open source, with web access listed alongside Linux, macOS and Windows.
Taplo
Taplo is a free toolkit for validating, formatting, and querying TOML documents, with support for TOML 1.0.0. Its validator checks syntax and semantic issues such as duplicate keys, and can apply JSON Schema Draft 4 validation. The formatter can edit files in place or use standard input and output; by default, it stops when syntax errors occur to avoid destructive edits. The CLI also converts TOML to JSON and retrieves values through query expressions. Taplo’s language server communicates through standard input/output or TCP, though multiple TCP clients are not supported. It is excluded from default builds and is unavailable in the NPM installation. The Even Better TOML Visual Studio Code extension adds highlighting, validation, folding, navigation, renaming, formatting, and JSON Schema completion; its listing calls it a preview that may contain bugs or crash. Taplo can retrieve schemas from catalogs such as JSON Schema Store and match them to files by name. Install options include precompiled releases, Cargo, Homebrew, NPM, and Docker; precompiled releases are listed for Linux, macOS, and Windows.