Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,8 @@
worked/**/*.html linguist-vendored=true
graphify-out/**/*.html linguist-vendored=true
*.html linguist-detectable=false

# Generated dependency bundle and verbatim third-party licenses preserve
# upstream whitespace so deterministic rebuild hashes remain stable.
graphify/vendor/svelte_ast_bridge.mjs -whitespace
graphify/vendor/svelte_ast_bridge.mjs.NOTICES.txt -whitespace
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ Every system ran on the same harness with the same model and budgets, scored by
| Requirement | Minimum | Check | Install |
|---|---|---|---|
| Python | 3.10+ | `python --version` | [python.org](https://www.python.org/downloads/) |
| Node.js *(Svelte extraction)* | 18+ | `node --version` | [nodejs.org](https://nodejs.org/) |
| uv *(recommended)* | any | `uv --version` | `curl -LsSf https://astral.sh/uv/install.sh \| sh` |
| pipx *(alternative)* | any | `pipx --version` | `pip install pipx` |

Expand Down
350 changes: 215 additions & 135 deletions graphify/extract.py

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions graphify/extractors/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,20 @@ class _SymbolImportFact:
target_path: Path
imported_name: str
line: int
binding_id: str | None = None
script_context: str | None = None
start_offset: int | None = None
end_offset: int | None = None
start_byte: int | None = None
end_byte: int | None = None

@dataclass(frozen=True)
class _SymbolAliasFact:
file_path: Path
alias: str
target_name: str
line: int
script_context: str | None = None

@dataclass(frozen=True)
class _SymbolExportFact:
Expand All @@ -82,6 +89,7 @@ class _SymbolExportFact:
local_name: str | None = None
target_path: Path | None = None
target_name: str | None = None
script_context: str | None = None

@dataclass(frozen=True)
class _StarExportFact:
Expand All @@ -104,6 +112,7 @@ class _SymbolUseFact:
relation: str
context: str
line: int
script_context: str | None = None

@dataclass
class _SymbolResolutionFacts:
Expand Down
Loading