# ast-grep vs Biome

**Leader by vioscaleAI score:** Biome

| Attribute | ast-grep | Biome |
|---|---|---|
| **vioscaleAI score** | 54.8 (35% (low)) | 68.2 (68% (medium)) |
| activity.commits_last_30d | 33 | 100 |
| adoption.dependent_repos | 177 | 587 |
| adoption.github_stars | 16,225 | 25,952 |
| adoption.package_downloads_weekly | - | 17,944,016 |
| content.faq | `[{"answer":"A structural code search and rewriting tool that uses AST analysis to locate and modify code patterns across thousands of files, with support for linting and programmatic access via Node.js bindings. It is indexed under Code Quality Tools.","source":"https://ast-grep.github.io","question":"What is ast-grep?","confidence":0.6},{"answer":"ast-grep is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://ast-grep.github.io","question":"Is ast-grep free to use?","confidence":0.6},{"answer":"ast-grep supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://ast-grep.github.io","question":"What platforms does ast-grep support?","confidence":0.6},{"answer":"Yes. ast-grep can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://ast-grep.github.io","question":"Can ast-grep be self-hosted?","confidence":0.6},{"answer":"Yes. ast-grep is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/ast-grep/ast-grep","question":"Is ast-grep open source?","confidence":0.95}]` | `[{"answer":"A fast command-line tool that formats and lints JavaScript, TypeScript, and web-related file types, combining formatter and linter functionality to streamline development workflows. It is indexed under Code Quality Tools.","source":"https://biomejs.dev","question":"What is Biome?","confidence":0.6},{"answer":"Biome offers a free tier, so you can start without paying. Pricing changes often, so verify at source before relying on it.","source":"https://biomejs.dev","question":"Is Biome free?","confidence":0.6},{"answer":"Biome supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://biomejs.dev","question":"What platforms does Biome support?","confidence":0.6},{"answer":"Yes. Biome can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://biomejs.dev","question":"Can Biome be self-hosted?","confidence":0.6},{"answer":"Yes. Biome is published under the Apache-2.0 licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/biomejs/biome","question":"Is Biome open source?","confidence":0.67}]` |
| deployment.options | `{"self_hosted":true}` | `{"self_hosted":true}` |
| description.long | Find and modify code patterns using abstract syntax tree analysis. Useful for linting, refactoring, and enforcing coding standards. | An all-in-one code formatter and linter built with Rust that can format code, identify issues, and improve code quality with high performance and minimal setup required. |
| features.capabilities | `{"autofix":true,"function":"static_analyzer","deployment":"cli_local","open_source":"oss","config_model":"rule_packs","custom_rules":true,"impl_language":"Rust","pricing_model":"free","language_scope":"multi_language","editor_integration":true}` | `{"autofix":true,"function":"linter_formatter","ci_gating":true,"deployment":"cli_local","open_source":"oss","config_model":"zero_config","impl_language":"Rust","pricing_model":"free","language_scope":"multi_language","editor_integration":true}` |
| integrations.count | - | 3 |
| integrations.list | - | `[{"name":"ESLint"},{"name":"TypeScript ESLint"},{"name":"Prettier"}]` |
| language.primary | Rust | Rust |
| license.spdx | MIT | Apache-2.0 |
| market.availability | - | `{"primaryMarkets":[],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` |
| platform.support | `{"cli":true}` | `{"cli":true}` |
| pricing | `{"type":"open_source","summary":"Free and open source","sourceUrl":"https://ast-grep.github.io","retrievedAt":"2026-10-13T13:48:30.935Z"}` | `{"type":"hybrid","summary":"Open source with optional commercial support available","freeTier":true,"sourceUrl":"https://biomejs.dev","retrievedAt":"2026-10-14T22:38:11.019Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | open_source | freemium |
| pricing.price_level | free | low |
| pricing.transparent | - | no |
| release.cadence_days | 15 | 6 |
| release.history | `[{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.50.0","date":"2026-10-09T14:19:44Z","type":"stable","version":"0.50.0"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.45.3","date":"2026-08-31T01:42:23Z","type":"stable","version":"0.45.3"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.45.2","date":"2026-08-23T19:48:48Z","type":"stable","version":"0.45.2"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.45.1","date":"2026-08-07T15:13:34Z","type":"stable","version":"0.45.1"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.45.0","date":"2026-07-23T16:07:00Z","type":"stable","version":"0.45.0"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.44.1","date":"2026-07-04T14:06:40Z","type":"stable","version":"0.44.1"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.44.0","date":"2026-06-22T01:49:47Z","type":"stable","version":"0.44.0"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.43.0","date":"2026-05-25T17:54:30Z","type":"stable","version":"0.43.0"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.42.3","date":"2026-05-19T15:18:18Z","type":"stable","version":"0.42.3"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.42.2","date":"2026-05-10T21:58:34Z","type":"stable","version":"0.42.2"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.42.1","date":"2026-04-04T16:01:20Z","type":"stable","version":"0.42.1"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.42.0","date":"2026-03-16T03:29:14Z","type":"stable","version":"0.42.0"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.41.1","date":"2026-03-10T14:04:27Z","type":"stable","version":"0.41.1"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.41.0","date":"2026-02-22T18:57:13Z","type":"stable","version":"0.41.0"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.40.5","date":"2026-01-10T17:57:43Z","type":"stable","version":"0.40.5"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.40.4","date":"2026-01-05T01:22:05Z","type":"stable","version":"0.40.4"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.40.3","date":"2025-12-15T15:38:42Z","type":"stable","version":"0.40.3"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.40.2","date":"2025-12-14T22:38:05Z","type":"stable","version":"0.40.2"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.40.1","date":"2025-12-11T05:41:28Z","type":"stable","version":"0.40.1"},{"url":"https://github.com/ast-grep/ast-grep/releases/tag/0.40.0","date":"2025-11-16T04:57:10Z","type":"stable","version":"0.40.0"}]` | `[{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.15","date":"2026-09-30T15:23:21Z","type":"stable","version":"@biomejs/biome@2.5.15"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.14","date":"2026-09-16T07:52:49Z","type":"stable","version":"@biomejs/biome@2.5.14"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.13","date":"2026-09-10T11:09:51Z","type":"stable","version":"@biomejs/biome@2.5.13"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.12","date":"2026-09-03T07:25:43Z","type":"stable","version":"@biomejs/biome@2.5.12"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.11","date":"2026-08-27T20:49:38Z","type":"stable","version":"@biomejs/biome@2.5.11"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.10","date":"2026-08-21T17:40:37Z","type":"stable","version":"@biomejs/biome@2.5.10"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.9","date":"2026-08-17T23:03:27Z","type":"stable","version":"@biomejs/biome@2.5.9"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.8","date":"2026-08-11T08:52:51Z","type":"stable","version":"@biomejs/biome@2.5.8"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.7","date":"2026-08-04T13:24:41Z","type":"stable","version":"@biomejs/biome@2.5.7"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.6","date":"2026-07-28T09:55:21Z","type":"stable","version":"@biomejs/biome@2.5.6"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.5","date":"2026-07-21T08:02:44Z","type":"stable","version":"@biomejs/biome@2.5.5"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.4","date":"2026-07-15T04:10:08Z","type":"stable","version":"@biomejs/biome@2.5.4"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.3","date":"2026-07-08T08:15:22Z","type":"stable","version":"@biomejs/biome@2.5.3"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.2","date":"2026-07-01T10:32:44Z","type":"stable","version":"@biomejs/biome@2.5.2"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.1","date":"2026-06-23T07:50:58Z","type":"stable","version":"@biomejs/biome@2.5.1"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/js-api%406.0.0","date":"2026-06-12T12:06:53Z","type":"stable","version":"@biomejs/js-api@6.0.0"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.5.0","date":"2026-06-12T12:09:51Z","type":"stable","version":"@biomejs/biome@2.5.0"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.4.16","date":"2026-05-27T13:43:14Z","type":"stable","version":"@biomejs/biome@2.4.16"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.4.15","date":"2026-05-09T17:09:39Z","type":"stable","version":"@biomejs/biome@2.4.15"},{"url":"https://github.com/biomejs/biome/releases/tag/%40biomejs/biome%402.4.14","date":"2026-05-01T19:24:12Z","type":"stable","version":"@biomejs/biome@2.4.14"}]` |
| security.vulnerabilities | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=%40ast-grep%2Fnapi&per_page=100","last_12m":0,"max_severity":null}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=%40biomejs%2Fbiome&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Code Quality Tools)

| Capability | ast-grep | Biome |
|---|:--:|:--:|
| **Core** |  |  |
| Function | Static analyzer | Linter + formatter |
| Language scope | Multi-language | Multi-language |
| Implementation language | Rust | Rust |
| **Capability** |  |  |
| Autofix | ✓ | ✓ |
| **Config** |  |  |
| Config model | Rule packs | Zero-config |
| **Extensibility** |  |  |
| Custom rules | ✓ | - |
| **Deployment** |  |  |
| Deployment | CLI-local | CLI-local |
| **Delivery** |  |  |
| Editor integration | ✓ | ✓ |
| CI / VCS gating | - | ✓ |
| **Insight** |  |  |
| Code metrics | - | - |
| **Performance** |  |  |
| Incremental / monorepo aware | - | - |
| **Licensing** |  |  |
| Open-source | OSS | OSS |
| **Commercial** |  |  |
| Pricing model | Free | Free |

*Source: vioscaleAI. Generated 2026-10-15T22:02:42.023Z. "-" = undocumented, not absent.*
