@nithin554/code-crawler 0.1.42 → 0.1.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -7
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -9,8 +9,8 @@ edges**, **virtual dispatch**, **aspect advice**, and the wiring frameworks add
|
|
|
9
9
|
exposes that graph to LLM clients as MCP tools: find callers, trace call paths, explore
|
|
10
10
|
neighborhoods, follow runtime dispatch, and search symbols across the whole codebase.
|
|
11
11
|
|
|
12
|
-
Supports **Java**, **Python**, and **
|
|
13
|
-
|
|
12
|
+
Supports **Java**, **Python**, **TypeScript**, and **JavaScript** projects, and can index
|
|
13
|
+
all of them into the same graph.
|
|
14
14
|
|
|
15
15
|
📖 **Documentation site:** <https://nithin554.github.io/code-crawler/>
|
|
16
16
|
📘 **Task-oriented guide:** [`USAGE.md`](USAGE.md)
|
|
@@ -43,13 +43,13 @@ Plain-text grep can't answer questions like:
|
|
|
43
43
|
- *"What is the impact radius of changing `OrderService#place`?"*
|
|
44
44
|
|
|
45
45
|
These need graph traversal. Code-Crawler builds the graph once (idempotently, file-by-file)
|
|
46
|
-
and answers them
|
|
46
|
+
and answers them with bounded recursive SQL queries.
|
|
47
47
|
|
|
48
48
|
## Features
|
|
49
49
|
|
|
50
|
-
- **
|
|
51
|
-
(`tree-sitter-python`),
|
|
52
|
-
|
|
50
|
+
- **Four languages, one graph**: Java (`tree-sitter-java`), Python
|
|
51
|
+
(`tree-sitter-python`), TypeScript (`tree-sitter-typescript`, `tree-sitter-tsx`), and
|
|
52
|
+
JavaScript (`tree-sitter-javascript`) — all WASM, no native build step.
|
|
53
53
|
Language is detected per file, so a polyglot repo lands in a single graph.
|
|
54
54
|
- **Dynamic tracing on a static graph** — `DYNAMIC_DISPATCH` edges connect interface/base
|
|
55
55
|
calls to every override in the project, and `ADVISES` edges weave AspectJ/Spring AOP
|
|
@@ -401,7 +401,8 @@ Adding a language requires:
|
|
|
401
401
|
`src/resolver/genericResolver.ts` and only override language-specific builtins.
|
|
402
402
|
|
|
403
403
|
The graph schema, store, traversal queries, and MCP surface stay the same for every
|
|
404
|
-
language.
|
|
404
|
+
language. Candidate next languages, and the modelling each one needs, are ranked in
|
|
405
|
+
[`ROADMAP.md`](ROADMAP.md) Phase 3.
|
|
405
406
|
|
|
406
407
|
Not yet modelled, by design:
|
|
407
408
|
|
|
@@ -413,6 +414,9 @@ Not yet modelled, by design:
|
|
|
413
414
|
`__reflect__:` marker instead of a symbol; there is nothing static to point at.
|
|
414
415
|
- Runtime DI graphs assembled from configuration files rather than code.
|
|
415
416
|
|
|
417
|
+
The full list, and what is modelled in exchange for each gap, is in
|
|
418
|
+
[`USAGE.md`](USAGE.md#7-what-is-and-is-not-modelled).
|
|
419
|
+
|
|
416
420
|
## Architecture
|
|
417
421
|
|
|
418
422
|
```
|