MontFerret/ferret
Declarative data automation language and Go runtime for structured extraction workflows. observed · 2026-08-28
Health v2 · maintenance only
83/100
- Activity 99
- Release rhythm 54
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 385
- age_days: 2932
- days_rel: 97
- days_push: 8
- n_releases_24m: 2
Adoption not part of the score
6008 stars · 323 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
Ferret is a declarative, expression-oriented query language (FQL) with an embeddable Go runtime for querying, transforming, and automating structured data from web pages, APIs, databases, and files. It supports browser-driven scraping via Chrome DevTools Protocol and can be embedded in Go applications or run as WebAssembly in JavaScript environments.
Use cases
- scrape product prices from dynamic web pages
- extract structured data from html
- query rest apis and transform results declaratively
- embed a data extraction runtime in a go application
- run web scraping scripts in node or the browser via wasm
- pull data from sqlite or xlsx files with a query language
- automate browser interactions to wait for and collect page content
When to choose
- you need declarative, scriptable web scraping with dynamic page support via CDP
- you want an embeddable data automation runtime with capability-based host control in Go
- you prefer a purpose-built query language over writing bespoke scraping code
- you need the same extraction scripts to run in Go, Node.js, or browsers
When to avoid
- you need a general-purpose scripting language for broad automation tasks
- your project requires a stable v2 release - v2 is still in alpha
- you want a simple one-off scraper without learning a new DSL
- you need heavy JavaScript execution beyond what CDP-driven pages provide
Facets
library · maturity active
web-scraping parser interpreter programming-language http-client data-science etl web-development developer-tools crawlers programming-languages go windows cli wasm browser cross-platform query-language dsl fql browser-automation chrome-devtools-protocol data-extraction embeddable-runtime html-scraping declarative-language data-engineering automation linux macos nodejs
10 sources
- readme: https://github.com/MontFerret/ferret · fetched 2026-08-28 · 7c9f833bd040
- homepage: https://www.ferretlang.org · fetched 2026-08-29 · a0f167e2bc16
- site_page: https://ferretlang.org/docs · fetched 2026-08-29 · 1e6f9cbceac5
- site_page: https://ferretlang.org/docs/getting-started · fetched 2026-08-29 · c56f0606691e
- site_page: https://ferretlang.org/docs/tools/cli/installation · fetched 2026-08-29 · eb25a7a2fbc4
- site_page: https://ferretlang.org/docs/embedding · fetched 2026-08-29 · 9a07cec408f6
- site_page: https://ferretlang.org/docs/embedding/javascript · fetched 2026-08-29 · bd57d31496dc
- site_page: https://ferretlang.org/docs/tools/visual-studio-code · fetched 2026-08-29 · 612b4c9dad2e
- site_page: https://ferretlang.org/try · fetched 2026-08-29 · 5858ab450441
- site_page: https://ferretlang.org/registry · fetched 2026-08-29 · 6b567dd664c7
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| MontFerret/ferret | main | 83 |
For agents
markdown · JSON · MCP: product_card(name="MontFerret/ferret")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem