# BurntSushi/aho-corasick

A fast implementation of Aho-Corasick in Rust.

Repository: https://github.com/BurntSushi/aho-corasick
Canonical: https://ross.abutalabs.com/products/aho-corasick
Language: Rust
License: Unlicense
License Family: permissive
Topics: aho-corasick, substring-matching, finite-state-machine, text-processing, search
Last push: 2026-08-10T12:06:53+00:00

## Health v2 (maintenance only)
Score: 76/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 97, release rhythm 35, longevity 100
- inputs: {"age_days": 4101, "days_push": 23, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1283, forks 120 (observed 2026-08-28T04:04:14.475829+00:00)

## What it is
A Rust library implementing the Aho-Corasick algorithm for fast simultaneous searching of many patterns, using a finite state machine with optional SIMD acceleration. It supports case-insensitive matching, overlapping matches, full DFA construction, and streaming search-and-replace.

## Use cases
- search a text for thousands of keywords at once
- find multiple substrings simultaneously in Rust
- replace many patterns in a stream without loading it into memory
- build a keyword filter or censoring tool
- case-insensitive multi-pattern matching
- scan logs for many signatures efficiently

## When to choose
- you need to match many literal patterns at once in linear time
- you're writing Rust and want a battle-tested, extremely fast multi-pattern search (over a billion crates.io downloads)
- you need streaming search-and-replace or overlapping matches

## When to avoid
- you need regex or fuzzy matching rather than literal patterns
- you're not using Rust
- you only need to search for a single pattern, where simpler algorithms suffice

## Facets
- artifact type: library
- maturity: stable
- function: search-engine, parser
- domain: developer-tools
- platform: rust
- tags: aho-corasick, string-matching, finite-state-machine, simd, text-processing, multi-pattern-search, algorithms, natural-language-processing

## Member repositories
- BurntSushi/aho-corasick (main) score 76

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:14.475829+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:56:46.925515+00:00, confidence not recorded.
  - readme: https://github.com/BurntSushi/aho-corasick (fetched 2026-08-28T04:04:14.475829+00:00, sha f3eabfcda76e)
  - registry_crates: https://crates.io/api/v1/crates/aho-corasick (fetched 2026-08-29T12:12:30.938109+00:00, sha a71748b11cba)
- Data as of 2026-08-30T08:39:29.467469+00:00.
