Releases: jamcgrath/svelte-component-visualizer
Releases · jamcgrath/svelte-component-visualizer
Release list
v0.4.0
Added
- Named
.svelteimports are now tracked as dependencies (previously only default imports were) <svelte:component this={Component}>dynamic usage is tracked whenthisis a direct component identifiersvelteVisualizer.unconditionalDependencyPathssetting (array of glob patterns): files matching a pattern treat all of their.svelteimports as dependencies regardless of template usage — useful for dynamic renderer componentssvelteVisualizer.showPathOnHoversetting (boolean, defaulttrue): show a node's full file path in a tooltip on hover; disable to turn the tooltip off- Incremental parsing: per-file parse results are cached by mtime and size, and a
.sveltefile watcher invalidates them, so refreshes only re-parse files that actually changed
Changed
- Graph node ids are now workspace-relative file paths instead of basenames, so two same-named components (e.g. two
Button.sveltein different folders) no longer collapse into a single node with misrouted edges - Same-named files now render as distinct nodes that share a plain label (basename, or the route's
(page) /path); hover any node to see its full path and tell clashes apart (toggle withsvelteVisualizer.showPathOnHover) - Bumped Svelte to 5.56.4
Removed
- The implicit "renderer" filename heuristic (any file with "renderer" in its path). Files that need all imports treated as dependencies must now be listed explicitly via
svelteVisualizer.unconditionalDependencyPaths - The standalone "Show Unused Imports" checkbox — it duplicated the legend's "Unused Import" filter; click that legend item to toggle unused-import visibility instead
v0.3.0
Changelog
All notable changes to the Svelte Component Visualizer extension will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
0.3.0 - 2026-04-03
Added
- Terminal file path insertion command:
Svelte: Insert File Path in Terminal - Explorer and editor context menu actions for terminal file path insertion
- Visualizer node context menu action:
Insert File Path in Terminal - Configurable terminal prefix via
svelteVisualizer.terminalPathPrefix(default@, empty string for plain paths) - Updated in-UI help dialog with terminal file reference instructions
Changed
- Terminal insertion now targets only the active terminal session
- Terminal insertion is silent (no success toast), with warnings only for missing prerequisites
- File reference format now uses configurable
<prefix><relative/path>(default@path/to/file)
0.1.0 - 2025-10-19
Added
- Interactive component dependency visualization using D3.js force-directed graph
- Search and filter functionality for components and routes
- Multiple visual themes:
- Modern theme with rounded corners and gradients
- Flat theme with Ableton-like minimal design
- Retro theme with early Mac System 6/7 (light) and green monochrome (dark)
- Retro Alt theme with Windows 3.1 (light) and amber monochrome (dark)
- Auto, light, and dark color scheme support
- SvelteKit route support for +page.svelte, +layout.svelte, and +error.svelte files
- Unused import detection and visualization (orange dashed borders)
- Drag and drop support for .svelte files onto the graph (desktop VSCode only)
- Context menu integration in Explorer sidebar and editor tabs
- Double-click nodes to open component files in the editor
- Cmd/Ctrl+Click to focus on specific nodes and their dependencies
- Customizable graph physics controls (link distance and charge strength)
- Toggle to show/hide unused imports
- Refresh button to regenerate the graph after file changes
- Configurable glob patterns for component and route file paths
- Support for custom routes base path configuration
- Cross-platform support (Windows, macOS, Linux)
Known Limitations
- Graph generation may be slow for very large projects (500+ components)
- Only supports default component imports (not named imports)
- Dynamic imports via
<svelte:component>are not tracked - Drag and drop not supported in browser-based VSCode environments (Code OSS, vscode.dev, GitHub Codespaces)
v0.2.1
v0.2.0
v0.2.0
What's Changed
- Fix keyboard focus visibility and optimize legend filter classification by @Copilot in #2
- Add legend filter feature with clickable node type toggles by @jamcgrath in #1
New Contributors
- @Copilot made their first contribution in #2
- @jamcgrath made their first contribution in #1
Full Changelog: v0.1.0...0.2.0
Initial Release
Changelog
All notable changes to the Svelte Component Visualizer extension will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
0.1.0 - 2025-10-19
Added
- Interactive component dependency visualization using D3.js force-directed graph
- Search and filter functionality for components and routes
- Multiple visual themes:
- Modern theme with rounded corners and gradients
- Flat theme with Ableton-like minimal design
- Retro theme with early Mac System 6/7 (light) and green monochrome (dark)
- Retro Alt theme with Windows 3.1 (light) and amber monochrome (dark)
- Auto, light, and dark color scheme support
- SvelteKit route support for +page.svelte, +layout.svelte, and +error.svelte files
- Unused import detection and visualization (orange dashed borders)
- Drag and drop support for .svelte files onto the graph (desktop VSCode only)
- Context menu integration in Explorer sidebar and editor tabs
- Double-click nodes to open component files in the editor
- Cmd/Ctrl+Click to focus on specific nodes and their dependencies
- Customizable graph physics controls (link distance and charge strength)
- Toggle to show/hide unused imports
- Refresh button to regenerate the graph after file changes
- Configurable glob patterns for component and route file paths
- Support for custom routes base path configuration
- Cross-platform support (Windows, macOS, Linux)
Known Limitations
- Graph generation may be slow for very large projects (500+ components)
- Only supports default component imports (not named imports)
- Dynamic imports via
<svelte:component>are not tracked - Drag and drop not supported in browser-based VSCode environments (Code OSS, vscode.dev, GitHub Codespaces)