Blazor and Razor in VS Code: C# Tooling for .razor Files
Blazor components, Razor Pages and MVC views now get the same Roslyn engine as your C# files: hover, completion, diagnostics, go to definition, references and rename, inside the markup.
Nimblesite Engineering
SharpLsp is built by the engineering team at Nimblesite, led by Christian Findlay. SharpLsp is MIT-licensed and developed in public — contributions welcome on GitHub.
Blazor components, Razor Pages and MVC views now get the same Roslyn engine as your C# files: hover, completion, diagnostics, go to definition, references and rename, inside the markup.
Your app is slow, or its memory keeps climbing. SharpLsp now profiles CPU and memory for any running .NET process without leaving VS Code, and it puts the answer on the line of code that caused it.
A lot of the .NET that ships every day is .NET Framework 4.8, on Windows. SharpLsp edits it on every OS, and on Windows it also runs and tests it, next to the net10.0 build of the same project.
Real libraries target net462 and net10.0 in the same project file. SharpLsp 0.23 gives every one of those frameworks the full experience — in C# and F# — and a Test Explorer that runs each of them.
xUnit v3 4.0 runs on Microsoft.Testing.Platform only, and a VSTest-only Test Explorer shows an empty tree for it. SharpLsp now runs MTP and VSTest side by side, in C# and F#, including discovery, ▶, Debug and code coverage.
0.19.0 fixes the inner loop for real: F5 and launch profiles that behave like dotnet run, async stacks that read like your code instead of MoveNext soup, and a Test Explorer backed by 4,800 lines of end-to-end tests.
A .NET language server should be a platform capability, not a feature trapped inside one editor — and right now, every option has a catch.
Diagnostics are only useful when developers can trust them completely. SharpLsp's goal is total accuracy: every real error shown, every false positive eliminated.
F# is not a C# side quest. The language, its community, and its production track record deserve editor tooling that is built around F# semantics from the start.