Side by side
Scalafmt vs Taplo
Both stand on code formatting tools. Which one you can start free with, which one lets you read the code, and what each costs once you pay.
Free plan LinuxMacSelf-hosted+1
Choose Scalafmt if you need a free, open-source formatter for Scala projects and want to run it through editors, builds, or the command line. Its main caveat is IntelliJ range formatting, which defaults to IntelliJ’s formatter and may not suit Scalafmt’s whole-file approach.
Visit Scalafmt Free plan APIExtensionLinux+2
Taplo brings TOML validation, formatting and queries into a free toolkit with multiple installation options. Note the language server's build and NPM limits, and the preview status of its Visual Studio Code extension.
Visit TaploThe facts
| Scalafmt | Taplo | |
|---|---|---|
| Free plan | Yes | Yes |
| Open source | Not published | Not published |
| Runs on | Linux, Mac, Self-hosted, Windows | API, Extension, Linux, Mac, Windows |
| Lowest paid plan | Free or on request | Free or on request |
| Plans published | 1 | 1 |
| Maker | Not published | Not published |
| Website | scalameta.org | taplo.tamasfe.dev |
| On code formatting tools | #17 of 34 | #21 of 34 |
Scalafmt: what it does well
- Formats Scala 2, Scala 3, sbt files, and Scala scripts.
- Runs from editors, build tools, or the terminal.
- Offers check and test modes that do not write changes.
- Supports ignoring files and formatting changed lines.
- Apache-2.0 licensed and open source.
What to know first
- IntelliJ range formatting uses IntelliJ’s own formatter by default.
- Configuration must explicitly set version and runner.dialect since 3.1.0.
Taplo: what it does well
- Supports TOML 1.0.0 and JSON Schema Draft 4.
- CLI converts TOML to JSON and extracts values.
- Formatter can edit files in place.
- Precompiled releases are listed for Linux, macOS and Windows.
What to know first
- Language server is excluded from default builds.
- Language server is unavailable in the NPM installation.
- VS Code extension preview may contain bugs or crash.
- Multiple TCP clients are not supported.
Alternatives to Scalafmt Alternatives to Taplo The whole list
