English
Built with lspf
lspf-analysis
lspf-analysis is a code health language server built with lspf. It analyzes functions and classes as you edit, with diagnostics and hover details in the editor. Its VS Code extension also provides a Code Health view for exploring analysis results.
VS Code extension · Pre-release
Code health while you edit
The analysis covers C++, Java, JavaScript, Python, Rust, TypeScript, and TSX. In VS Code, diagnostics appear in the Problems view, hover shows function and class details, and the Code Health view lists function metrics. The status bar summarizes the active file. You can inspect the results alongside the code you are changing.
Code health scores come from source-code metrics. The project documentation explains the scoring and configuration options.
How lspf fits
The application combines an analysis engine with editor clients through a Rust language server. lspf manages the synchronized documents and LSP connection; lspf-analysis owns the analysis, scoring, and editor presentation.
Editor clientDocument changes and hover requestsDiagnostics and Code Health view
↔lspf-analysis server
lspfDocument synchronization · LSP dispatch
Application handlers and analysis engineSource-code metrics · Code health scores
The server uses document lifecycle notifications to trigger analysis. Its handlers read synchronized documents, publish diagnostics, and answer hover requests. Custom requests and notifications carry file summaries and function details for the editor UI.
This is a downstream application with its own analysis and clients. Its server integration shows how lspf's protocol features work together in an application.
Try it in VS Code
Install LSPF Analysis from the Visual Studio Marketplace. The VS Code extension is currently a pre-release. Follow the extension's installation instructions for setup and configuration.
The repository also contains IntelliJ IDEA and Visual Studio clients. Their setup and availability are documented in the project; the Marketplace extension linked here is for VS Code.
Read the implementation
Start with the server integration to see handler registration and the connection between analysis and LSP messages. The VS Code client shows how the editor presents those results.
For the framework APIs behind the application, see feature registration, workspace state, and custom messages. The small feature example servers isolate individual protocol features when you want a shorter starting point.