.NET Tools
Essential productivity kit for .NET and game developers
Must-have JetBrains Rider Plugins For ASP.NET Core Developers
According to our most recent developer survey, ASP.NET Core is the most used technology the .NET ecosystem offers, with ASP.NET MVC following up in the third spot. It’s not a surprise because the web is a wild and weird place, where we can all explore the limits of what’s possible.
As JetBrains Rider users, we already get many helpful plugins and features immediately out of the box:
- Extensive database engine support
- HTML/CSS/JavaScript code completion and quick fixes
- Kestrel and IIS Express integration
- ASP.NET Core templates
- Docker support
- Node.JS support
- and more!
While we believe developers already have the best out-of-the-box ASP.NET experience with a vanilla installation of Rider, we have scoured the JetBrains Marketplace to find plugins that will make our ASP.NET Core development experience even better.
So, here are some of our must-have plugins for ASP.NET Core developers.
Extra Icons
ASP.NET Core has increasingly become a great foundation for web applications, with opportunities to adopt toolsets, mainly from the JavaScript community. It is possible to see various technologies like React, Angular, Vue.js, and Svelte all within the same project.
To help maintain our bearings, we’ve found installing the Extra Icons plugin helps identify kinds of files with uniquely striking icons. The plugin comes with a library of preinstalled icons, but users can also add custom icons and set them to file types using regular expressions.
Cloud Development
Part of successfully building an ASP.NET Core application is having access to the right tools during development. Whether you’re a die-hard Azure or Amazon Web Services fan, Rider offers the plugins to get your application from development to a production environment.
Microsoft Azure
For Azure users, there’s the full-featured Azure Toolkit for Rider, with support for all the major Azure offerings:
- Azure App Services
- Azure Functions
- Azure SQL
- Azure Blob Storage
- Azure Cloud Shell
Azure users will also have access to Azurite, a local azure emulator which mimics storage APIs. The storage emulator can dramatically reduce the cost of developing cloud-first applications by eliminating the need for development resources in Azure.
Application Insights is a great application monitoring choice for Azure users. To see Application Insight logs locally, we recommend installing the Application Insights Debug Log Viewer plugin, which helps ASP.NET Core developers see trace and log messages generated by the Application Insights NuGet packages.
Install the Azure Toolkit for Rider and the companion plugin Application Insights Debug Log Viewer for the best Azure experience possible.
Amazon Web Services (AWS)
For AWS developers, we’ve got you covered with the AWS Toolkit, which gives you the ability to develop, deploy, view, and manage all your AWS resources.
Our favorite feature of AWS is Lambda; the serverless compute service lets us run ASP.NET Core endpoints and apps without the trouble of provisioning or managing servers. With AWS toolkit, we can run and debug our ASP.NET Core Lambda apps locally.
AWS users can also manage production environments by searching CloudWatch log streams, exploring S3 buckets, or using the Resource Explorer to find a provisioned AWS resource. All management is secured using the built-in authentication, which supports static credentials, credential process, or AWS SSO.
AWS users should download the AWS toolkit today.
.NET Core User Secrets
A newer feature of the .NET ecosystem is user secret management. We may want to interact with a third-party resource while developing locally but don’t want to check our secrets into source control. Our secrets are stored in a local json
file, outside of our project, specified by an UserSecretsId
element in .csproj
.
Bonus tip from Maarten, the UserSecretsId
elment can contain any value, including MSBuild parameters.
<Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>net6.0</TargetFramework> <UserSecretsId>$(MSBuildProjectName)</UserSecretsId> </PropertyGroup> </Project>
Tracking this file down can be tedious. Luckily, Rider user Alexander Gillissen has created a .NET Core User Secrets plugin to open the user secret file associated with a project quickly. Right-click the project, navigate down to Tools, and select Open project user secrets.
While this plugin is a relatively small convenience, it can add up to substantial productivity gains.
Frontend Frameworks
Frontend frameworks have become an essential element for delivering rich user experiences on the web. JetBrains Rider ships with support for popular frameworks like:
Along with the built-in integration, there are other plugins for other popular frameworks:
If you’re building a frontend using JavaScript, then the JetBrains plugin ecosystem likely has you covered.
Containerization
Containerizing web applications is a popular technique for managing production environments. It is also convenient for local development experiences that emulate a production setting. JetBrains Rider users have built-in support for Docker but can also download a plugin for Kubernetes.
The Kubernetes plugin is an impressive feature set, with some of the more notable features listed below:
- Browse cluster objects and extract their configurations.
- View and download pod logs.
- Attach to a pod console.
- Applying resource YAML configurations from the editor.
- Deleting resources from the cluster.
The Kubernetes plugin also provides rich YAML support for configurations, including smart completion when editing and detecting invalid, missing, or duplicate keys.
Editor Enhancements
Web development is fraught with markup, nested structures, and lots of typing. This combination of plugins will help developers do quick work of navigating large HTML pages, see nesting structures naturally, and find pesky grammatical and spelling errors.
AceJump allows you to quickly navigate the caret to any position visible in the editor. Use the shortcut key of ctrl+;
to activate an editor search, along with characters identifying jump points.
Indent Rainbow colorizes matching indentation blocks so developers can easily match scopes. The plugin can be beneficial in long and nested HTML files.
Finally, we have Grazie, a plugin designed to find spelling errors and make grammatical recommendations to written text. Useful for comments and fixing misspelled variables. Grazie has support for over 15 languages, including English, German, Russian, and Chinese. It also supports both programming languages and markup languages. If you’re concerned about privacy, know that all proofreading is performed locally within the IDE.
Clientside UI
Building user interfaces can be just as challenging as any backend development. Many developers lean on existing UI frameworks like Bootstrap and TailwindCSS. If you’re one of those developers using a design system, we have some good news for you. JetBrains Rider has plugins for all of the previously mentioned tools.
If you want to develop a custom design system, JetBrains Rider supports styling languages CSS, Sass, LESS, and PostCSS.
While considering what dependencies you want to reference, you can use the jsDelivr plugin to search and add CDN links to your HTML pages before downloading and managing files on disk.
OpenAPI Specifications
OpenAPI is the most common approach to building HTTP APIs. ASP.NET Core has built-in support for OpenAPI, generating a specification directly from controllers and endpoints. We recommend trying the OpenAPI Specifications plugin, which brings support for OpenAPI 3.0, validation by JSON schema, navigation, completion, and rename refactorings, and a whole lot more.
K6 and Load Testing
K6 is a load testing framework that allows web developers to run intensive tests on their APIs and apps. Recently, they’ve released a plugin for JetBrains IDEs that gives users the ability to run and view load tests directly in the IDE.
Conclusion
ASP.NET Core development can benefit from any or all the plugins mentioned in this post. The JetBrains marketplace continues to grow with new and exciting enhancements to the JetBrains product line. If you found any of these plugins personally helpful, please leave a comment. If you feel like we missed any, please feel free to share them with others. As always, thank you for reading.