A lightweight, text-based Language Server Protocol implementation for Angular. This extension provides lightning-fast navigation by bypassing the heavy overhead of the official Angular Language Service.
Features
Fast Component Navigation: Cmd/Ctrl + Click on any custom component selector (e.g., <dh-test>) in HTML or TypeScript to jump directly to the component definition.
Template Linking: Instant "Go to Definition" for templateUrl paths.
Style Linking: Supports navigation for styleUrl and styleUrls (CSS/SCSS).
Monorepo Ready: Optimized for speed in Nx-style monorepos and large enterprise codebases.
Zero-Config Cross-Platform: Works out of the box on Windows, Intel Macs, and Apple Silicon (M1/M2/M3) without installing external dependencies.
Requirements
No external dependencies required! The extension bundles high-performance Ripgrep binaries for:
Windows (x64)
macOS Intel (x86_64)
macOS Apple Silicon (ARM64)
How it Works
Unlike the official Angular LSP which parses a full TypeScript Type Graph (often leading to high memory usage and lag), this extension uses an optimized Ripgrep engine. By treating your workspace as a high-performance text index, it finds component definitions in milliseconds, even in projects with thousands of files.
Known Issues
Does not support navigation for dynamically generated selectors.
Requires exact string matching for selectors.
Release Notes
1.0.2
Static Bundling: Switched to esbuild for production builds. All dependencies are now baked into the extension, resolving "Module not found" errors on Windows.
Intelligent Binary Selection: Improved CPU architecture detection to automatically switch between rg (ARM64) and rg-x86 (Intel) on macOS.
Performance Optimization: Reduced extension startup time by minifying the client and server bundles.