Freedom251 › Code Refactoring Tools
BrontoSource

What BrontoSource is
BrontoSource is a C++ refactoring tool for engineering teams working on large, long-lived systems. It applies user-defined transformation rules across repositories, including batches that span thousands of files. Documented operations include matching expressions and specifying replacements, as well as inlining and extraction involving expressions, declarations, types, lambda captures and preprocessor macros. Some forms have documented requirements. The command-line tool accepts Clang arguments, a compilation database or a compile_flags.txt file, and can generate edits in Fossil format, merge edit files and apply changes. BrontoSource describes its resulting diffs as deterministic, repeatable and traceable. Its homepage reports 100M+ lines transformed safely and 10,000+ files refactored in one transformation. The refactoring tool is in early access, and interested teams can contact BrontoSource to try it on their codebase. The API can also be tried on Compiler Explorer without installing the tool. A separate header-only support library supports CMake 3.10.0+ and Bazel 8.1.1+, uses the 0BSD license and compiles to nothing at runtime, according to the docs. BrontoSource is paid, with pricing on request, and supports desktop deployment and web access.
Who it suits
BrontoSource suits engineering teams responsible for large, long-lived C++ systems and repository-wide modernization. It is geared toward teams that need to define transformations and review the resulting changes across many files.
What it does well
- Applies explicit transformation rules across repositories.
- Documents expression matching, inlining and extraction capabilities.
- Generates, merges and applies edits in Fossil format.
- API can be tried on Compiler Explorer without installation.
- Support library supports CMake 3.10.0+ and Bazel 8.1.1+.
What to know first
- The refactoring tool is in early access.
- Pricing is available on request.
- The documented supported language is C++.
Getting started
- Visit the BrontoSource website.
- Contact BrontoSource to ask about early access and trying the tool on your codebase.
- Try the API on Compiler Explorer without installing the tool.
- Provide Clang arguments, a compilation database or a compile_flags.txt file to the command-line run.
- Generate, merge and apply edits in Fossil format.
Verdict
Choose BrontoSource if your team needs rule-driven C++ refactoring across a large repository and reviewable diffs. Teams seeking immediate general availability should note that the tool is in early access; pricing also requires an inquiry.
Questions
How much does BrontoSource cost?
BrontoSource is paid, and pricing is on request.
Is the refactoring tool generally available?
The refactoring tool is in early access. Interested teams are asked to contact BrontoSource.
Which language does it support?
The listed supported language is C++.
Can I try it without installing it?
The API can be tried on Compiler Explorer without installing the tool.
Which build systems does the support library support?
The header-only support library has built-in support for CMake 3.10.0+ and Bazel 8.1.1+.
Facts from BrontoSource's own pages
- Availability
- The refactoring tool is currently in early access; interested users are asked to contact BrontoSource to try it on their codebase. · docs.brontosource.dev, 8 Oct 2026
- Build support
- The header-only support library has built-in support for CMake 3.10.0+ and Bazel 8.1.1+. · docs.brontosource.dev, 8 Oct 2026
- Build systems
- The header-only support library provides built-in support for CMake 3.10.0+ and Bazel 8.1.1+. · docs.brontosource.dev, 8 Oct 2026
- Compiler input
- The run command accepts Clang arguments or a compilation database or compile_flags.txt file as input. · docs.brontosource.dev, 8 Oct 2026
- Early access
- The refactoring tool is in early access; interested users are asked to contact BrontoSource. · docs.brontosource.dev, 8 Oct 2026
- Expression matching
- Expression patterns can identify source expressions and specify replacement expressions. · docs.brontosource.dev, 8 Oct 2026
- Founded
- BrontoSource says it was founded in September 2024 by a team of former Google engineers. · brontosource.dev, 8 Oct 2026
- Inlining
- Bronto supports inlining functions, constructors, type aliases, enumerators, namespaces, and macros, with documented requirements for some of these forms. · docs.brontosource.dev, 8 Oct 2026
- Intended use
- Bronto is designed for large-scale refactoring across multiple repositories and very large codebases. · docs.brontosource.dev, 8 Oct 2026
- Intended users
- BrontoSource is designed for engineering teams responsible for large, long-lived systems. · brontosource.dev, 8 Oct 2026
- License
- The support library uses the 0BSD license and compiles to nothing at runtime, according to the getting-started documentation. · docs.brontosource.dev, 8 Oct 2026
- Maker background
- BrontoSource says it was founded in September 2024 by a team of former Google engineers. · brontosource.dev, 8 Oct 2026
- Product
- BrontoSource provides deterministic C++ refactoring tools for modernizing large codebases. · brontosource.dev, 8 Oct 2026
- Purpose
- Bronto is a tool for automatically performing smart find-and-replace across a codebase. · docs.brontosource.dev, 8 Oct 2026
- Refactoring rules
- Users define explicit transformation rules and apply them across thousands of files. · brontosource.dev, 8 Oct 2026
- Reviewable changes
- The site says transformations produce deterministic, repeatable, traceable diffs. · brontosource.dev, 8 Oct 2026
- Scale claim
- BrontoSource states that the tool has refactored 10,000+ files in a single transformation. · brontosource.dev, 8 Oct 2026
- Scale claims
- The homepage reports 100M+ lines transformed safely and 10,000+ files refactored in a single transformation. · brontosource.dev, 8 Oct 2026
- Support
- Users can contact [email protected] or create an issue on the public GitHub repository. · docs.brontosource.dev, 8 Oct 2026
- Support library license
- The support library uses the 0BSD license and compiles to nothing at runtime, according to the docs. · docs.brontosource.dev, 8 Oct 2026
- Transformation types
- Its documented capabilities include inlining, extraction, and pattern matching for expressions, declarations, types, lambda captures, and preprocessor macros. · docs.brontosource.dev, 8 Oct 2026
- Try it online
- The site says users can try the API on Compiler Explorer without installing the tool. · docs.brontosource.dev, 8 Oct 2026
- Try the API
- The docs say users can try the API on Compiler Explorer without installing the tool. · docs.brontosource.dev, 8 Oct 2026
- Who it serves
- BrontoSource describes its tool as intended for engineering teams responsible for large, long-lived systems. · brontosource.dev, 8 Oct 2026
Where BrontoSource stands on Freedom251
- Code Refactoring Tools#21 of 22
