Modernize your ASP.NET Core Swagger UI with runtime theme switching, deep customization, and new functional UI features.
$ dotnet add package AspNetCore.SwaggerUI.ThemesAspNetCore.SwaggerUI.Themes is a package that extends Swashbuckle.AspNetCore.SwaggerUI to provide new themes for Swagger documentation in ASP.NET Core applications.
</span>Swashbuckle.AspNetCore is a popular library for adding Swagger support to ASP.NET Core projects, making it easier to document and interact with your APIs.
AspNetCore.SwaggerUI.Themes builds upon Swashbuckle.AspNetCore.SwaggerUI, enhancing the Swagger UI with modern and visually appealing themes.
| Version | Status |
|---|---|
| .NET 6 | |
| .NET 7 | |
| .NET 8 |
The table below provides a quick overview of AspNetCore.SwaggerUI.Themes versions and their compatibility with different .NET versions.
| Library Version | .NET 6 | .NET 7 | .NET 8 |
|---|---|---|---|
| 0.1.0 | ❌ | ❌ | ✔ |
| 0.2.0 | ✔ | ✔ | ✔ |
To use AspNetCore.SwaggerUI.Themes in your ASP.NET Core project, follow these steps:
Install the package using .NET CLI or NuGet Package Manager:
dotnet add package AspNetCore.SwaggerUI.Themes
or
Install-Package AspNetCore.SwaggerUI.Themes
In your Program.cs file, add the style through the Style class as new parameter of app.UseSwaggerUI() method:
using AspNetCore.SwaggerUI.Themes;
...
app.UseSwaggerUI(Style.Dark);
This code enables the chosen theme for Swagger UI in your application.
Please be aware that for projects utilizing the older style template with separate
Startup.csandProgram.csfiles, the previously code should be configured within theConfiguremethod of theStartupclass.
Here's an example of how to integrate AspNetCore.SwaggerUI.Themes in your ASP.NET Core application:
using AspNetCore.SwaggerUI.Themes;
...
// Add services to the container. Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
...
// Use Swagger middleware
app.UseSwagger();
// Enable the dark theme for Swagger UI
app.UseSwaggerUI(Style.Dark, c =>
{
// Your Swagger UI configuration here (optional)
});
...
That's it! Your Swagger UI will now have a sleek dark theme.
Please note that using the
InjectStylesheet()method in the Swagger UI configuration will override the provided style.
If you have any suggestions, bug reports, or contributions, feel free to open an issue or submit a pull request