APIWeaver.Swagger
1.1.1
dotnet add package APIWeaver.Swagger --version 1.1.1
NuGet\Install-Package APIWeaver.Swagger -Version 1.1.1
<PackageReference Include="APIWeaver.Swagger" Version="1.1.1" />
paket add APIWeaver.Swagger --version 1.1.1
#r "nuget: APIWeaver.Swagger, 1.1.1"
// Install APIWeaver.Swagger as a Cake Addin
#addin nuget:?package=APIWeaver.Swagger&version=1.1.1
// Install APIWeaver.Swagger as a Cake Tool
#tool nuget:?package=APIWeaver.Swagger&version=1.1.1
APIWeaver
APIWeaver is a powerful and lightweight library designed to provide a seamless integration of OpenAPI and Swagger UI into your .NET 6+ apps. APIWeaver supports the latest .NET features and is designed to be future-proof, ensuring support for upcoming .NET and OpenAPI features.
Getting Started
To get started with APIWeaver, you can install the NuGet package using your preferred package manager. In most cases, the package APIWeaver.Swagger
is the one you are looking for.
- Install the NuGet package
dotnet add package APIWeaver.Swagger
- Add the using directive to your Program.cs file
using APIWeaver;
- Add the following lines to your
Program.cs
file.
builder.Services.AddApiWeaver();
// other code
if (app.Environment.IsDevelopment())
{
app.UseSwaggerUi();
}
That's it. You now have a fully functional Swagger UI in your application. The UI can be accessed by navigating to /swagger
in your browser 🥳. A more detailed guide with more use cases can be found here.
Currently supported features
- Fully functional and configurable Swagger UI (with dark mode 🌙)
- OpenAPI 3.0 generation
- OpenAPI generation based on minimal APIs and controllers
- .NET 6, 7 and 8 including required members, nullable types and latest validation attributes
System.Text.Json
including serializer options like IncludeFields, IgnoreReadOnlyFields, IgnoreReadOnlyProperties and more- Custom transformers to modify the generated OpenAPI document asynchronously
Roadmap
- Full support for discriminators (https://github.com/xC0dex/APIWeaver/issues/21)
- Security definitions for OpenAPI documents
- API client generation based on the generated OpenAPI document
- ... and many more
Work in progress
This project is currently under active development, with ongoing improvements, new features and potential API changes. If you have any feedback, feature requests or issues, please feel free to open an issue or a pull request.
Contribution and Collaboration
Your contributions to this project are welcomed and encouraged. Your active involvement can significantly impact its success!
License
Distributed under the MIT License. See LICENSE for more information. This means APIWeaver will always remain free.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- APIWeaver.Core (>= 1.1.1)
- APIWeaver.OpenApi (>= 1.1.1)
-
net7.0
- APIWeaver.Core (>= 1.1.1)
- APIWeaver.OpenApi (>= 1.1.1)
-
net8.0
- APIWeaver.Core (>= 1.1.1)
- APIWeaver.OpenApi (>= 1.1.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.1.1 | 111 | 3/4/2024 |
1.1.0 | 100 | 2/21/2024 |
1.0.0 | 106 | 2/15/2024 |
0.0.1-alpha.10 | 52 | 2/14/2024 |
0.0.1-alpha.9 | 47 | 2/12/2024 |
0.0.1-alpha.8 | 47 | 2/12/2024 |
0.0.1-alpha.7 | 46 | 2/11/2024 |
0.0.1-alpha.6 | 48 | 2/11/2024 |
0.0.1-alpha.5 | 42 | 2/11/2024 |
0.0.1-alpha.4 | 46 | 2/10/2024 |
0.0.1-alpha.3 | 44 | 2/9/2024 |
0.0.1-alpha.2 | 45 | 2/9/2024 |