BrontoSource vs Scalafix
BrontoSource
brontosource.devScalafix
scalacenter.github.ioSide by side
| Figure | BrontoSource | Scalafix |
|---|---|---|
| Price from | — | — |
| Free plan | — | — |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | — | Yes |
| Plans published | 0 | 0 |
| Spec score · Code Refactoring Tools | 7.7 (#11) | 7.0 (#20) |
| Founded | BrontoSource says it was founded in September 2024 by a team of former Google engineers. | 2016 |
| Purpose | Bronto is a tool for automatically performing smart find-and-replace across a codebase. | Scalafix is a refactoring and linting tool for Scala. |
In their own words
BrontoSource
BrontoSource is a desktop tool for deterministic C++ refactoring across large repositories. Teams define explicit transformation rules and apply them across thousands of files. Documented operations include expression matching, extraction, and inlining for functions, constructors, type aliases, enumerators, namespaces, macros, declarations, types, and lambda captures. The command-line tool accepts Clang arguments, a compilation database, or compile_flags.txt, then can generate Fossil-format edits, merge edit files, and apply changes. BrontoSource describes its output as repeatable, traceable diffs for review. Its homepage reports 100M+ lines transformed safely and 10,000+ files refactored in one transformation. The product is in early access, with access arranged through BrontoSource; its API can also be tried on Compiler Explorer without installation. Pricing is on request. A header-only support library supports CMake 3.10.0+ and Bazel 8.1.1+ and uses 0BSD.
Scalafix
Scalafix is a refactoring and linting tool for Scala that automates routine code-health work and one-time migrations. It reports patterns that may lead to production bugs or conflict with coding style, and teams can run rules during code review. Its check option fails when linting or fixes are needed. Syntactic rules run directly on source code; semantic rules need compiled sources with the SemanticDB compiler plugin enabled. Built-in rules include OrganizeImports, RemoveUnused, DisableSyntax, ProcedureSyntax, and RedundantSyntax. Developers can also create custom lint and rewrite rules through its public API. The official build integration is for sbt. Documentation also lists externally maintained integrations for scala-cli, Mill, Gradle, Maven, and Mega-Linter, whose integration supports only built-in syntactic rules. Scalafix is tested on macOS, Linux, and Windows. Listed tested Scala versions are 2.12.21, 2.13.18, and 3.9.0 LTS. It is no longer published for Scala 2.11 or sbt 0.13.x. Community help is available through Discord and Scala Users. The tool is free.