# Project Context ## Codebase Index **Before exploring unfamiliar parts of the codebase, consult `.context/relationships.json`** This file contains: - **files**: Per-file breakdown of imports, exports, and defined symbols - **symbols**: Global symbol-to-location index (find any function/var instantly) - **dependencyGraph**: Which files depend on which ### Usage patterns: 1. **Finding where something is defined:** ``` Look up "MyComponent" in symbols → gives you file + line number ``` 2. **Understanding a file's dependencies:** ``` Check files["src/views/main.cljs"].imports → see what it pulls in ``` 3. **Impact analysis (what breaks if I change X):** ``` Search dependencyGraph for files that import the target file ``` ### Regenerating the index ```bash # Manual go run tools/indexer/main.go -root . -out .context/relationships.json # Or it runs automatically on commit (see .git/hooks/post-commit) ``` ## Tech Stack - **Frontend**: Vite + ClojureScript (shadow-cljs) - **Languages indexed**: .cljs, .clj, .cljc, .js, .ts, .jsx, .tsx