Scan JS/TS projects for symbol definitions and references, and quickly spot unused functions and class members. Results are grouped by file in a dedicated Activity Bar view for fast navigation.
Features
Indexes JavaScript and TypeScript files (including JSX/TSX)
Uses VS Code's built-in document/definition/reference providers for accurate results
Augments class members when language servers omit them (methods, accessors, arrow-function properties, fields, constructors)
Groups results by file in a Tree View; click to open definitions or references
Highlights unused symbols (no references found)
Optional JSON report (.refs-report.json) when enabled via command options
Configurable ignore rules
Commands
Scan All References (JS/TS) (refs.scanAll): Scan the current workspace or a chosen folder
Scan References in Folder (refs.scanFolder): Context-menu entry on folders in Explorer
Scan References in Folder (unused only) (refs.scanFolderUnused)
Refresh (refsScan.refreshView): Re-run the last scan with the same options
View
Activity Bar container: "Refs"
View ID: refsScan.resultsView
Shows a file list; each file expands to show symbol definitions, which then expand to their reference locations
Settings
refsScan.ignoreRules: Array of rules to filter out symbols from scanning/reporting.
Each rule can include the following properties:
kinds: array of symbol kinds to match. One of: Function, Method, Class, Property, Field, Constructor, Variable, Constant, Accessor.
name: exact symbol name to match.
namePattern: regex (without slashes) to match symbol names.
classExtends: string or array of strings. Only apply when the symbol is inside a class extending any of these base names (e.g. Phaser.Scene).
This extension activates when you run its commands or when your workspace contains JS/TS files. It is implemented in plain JavaScript (no TypeScript build step) and runs on the extension host (Node.js).
Requirements
VS Code ^1.95.0 or later
Known limitations
Accuracy depends on the language service results for definitions/references.