Thanks to visit codestin.com
Credit goes to lib.rs

#test-framework #extractor #language-framework #overlay #python #rails #heuristics #ruby #flask #appear

ckg-lang

Language and framework knowledge for ckg: tree-sitter extractors, framework overlays, entry-point heuristics, test/build-artifact classification

4 stable releases

Uses new Rust 2024

1.1.3 May 12, 2026

#665 in Testing


Used in 2 crates

Apache-2.0

525KB
12K SLoC

Tree-sitter extractors split into two layers:

  • lang — pure language extraction (decls, imports, calls, type bindings). One module per supported language.
  • framework — framework-specific overlays that extend a language (Axum routes for Rust, FastAPI/Flask routes for Python, the entire Rails DSL for Ruby). Frameworks are called by their language module when a known framework call shape appears in the AST.

Adding a new framework: create framework/<name>.rs, expose detector functions, and call them from the relevant lang/<x>.rs walk.

Dependencies

~135MB
~3M SLoC