CodeWave.Utils
1.0.3
See the version list below for details.
dotnet add package CodeWave.Utils --version 1.0.3
NuGet\Install-Package CodeWave.Utils -Version 1.0.3
<PackageReference Include="CodeWave.Utils" Version="1.0.3" />
<PackageVersion Include="CodeWave.Utils" Version="1.0.3" />
<PackageReference Include="CodeWave.Utils" />
paket add CodeWave.Utils --version 1.0.3
#r "nuget: CodeWave.Utils, 1.0.3"
#:package CodeWave.Utils@1.0.3
#addin nuget:?package=CodeWave.Utils&version=1.0.3
#tool nuget:?package=CodeWave.Utils&version=1.0.3
CodeWave.Utils
This is a general purpose library with nice to have gadgets for APIs
You can include all items separatedly as you wich, but the simple way of using it is by using:
builder.AddAll();
and
app.UseAll();
Make sure to add the later before the app.UseAuthorization(); line from the default template
Example:
using CodeWave.Utils;
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.AddAll();
builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI();
app.UseDeveloperExceptionPage();
}
app.UseHttpsRedirection();
app.UseAll();
app.UseAuthorization();
app.MapControllers();
await app.RunAsync();
Configuration
All elements on the configuration are optional. Use only the ones needed.
Configuration should be set in this format:
{
"ApiInfo": {
"Id": "my-api",
"Title": "My Super Api",
"Version": "v1",
"Contact": {
"Name": "The Digital Team",
"Email": "digital@gmail.com"
}
},
"KeyVaultName": "my-keyvault-name",
"SqlServer": "my-sql-server-name",
"SqlCatalog": "my-sql-catalog",
"ServiceBusName": "my-sb-name",
"ServiceBusTopic": "my-sb-topic",
"StorageAccountName": "my-storage-account-name",
"ActiveDirectory": {
"Authority": "https://login.microsoftonline.com/***************************/v2.0",
"Audiences": []
},
"AzureActiveDirectory": {
"Authority": "https://login.microsoftonline.com/***************************/v2.0",
"Audiences": []
},
"SendGridKey: : "mysendgridkey**************",
"Twilio" : {
"AppId" : "my-twilio-appId",
"Token" : "my-twilio-token",
"FromNumber" : "+0987654321",
"WhatsappNumber" : "+1234567890"
}
}
General
All items in the configuration are optional. If correctly set:
Heltchecks are added for elements selected in the config.
The keyvault is added as a configuration source, accesibble using IConfiguration
The SQL is added as a configuration source, it will automaticaly create a table named configurations.
Connection string constructed automatically configuration["ConnectionStrings:Sql"]
Default Odata endpoint enabled to list/add/remove configurations
Clients for storage are automatically added. Use BlobServiceClient, TableServiceClient, QueueServiceClient
Service bus is automatically added. Use ServiceBusClient, ServiceBusAdministrationClient
Swagger set up to use "documentation.xml", additional headers added
Default active directory configuration added
Sendgrid client is automatically added. Use IEmailService
Twillio client for sms and whatsapp is added. Use ISmsService and IWhatsappService
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- AspNetCore.HealthChecks.Azure.Data.Tables (>= 8.0.1)
- AspNetCore.HealthChecks.Azure.Storage.Blobs (>= 8.0.1)
- AspNetCore.HealthChecks.Azure.Storage.Queues (>= 8.0.1)
- AspNetCore.HealthChecks.AzureServiceBus (>= 8.0.1)
- AspNetCore.HealthChecks.SqlServer (>= 8.0.1)
- AutoMapper (>= 14.0.0)
- Azure.Data.Tables (>= 12.10.0)
- Azure.Extensions.AspNetCore.Configuration.Secrets (>= 1.4.0)
- Azure.Identity (>= 1.13.2)
- Azure.Messaging.ServiceBus (>= 7.19.0)
- Azure.Storage.Blobs (>= 12.24.0)
- Azure.Storage.Queues (>= 12.22.0)
- Fluid.Core (>= 2.22.0)
- Handlebars.Net (>= 2.1.6)
- Jsonata.Net.Native (>= 2.10.0)
- Microsoft.ApplicationInsights.AspNetCore (>= 2.23.0)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 8.0.15)
- Microsoft.AspNetCore.Http.Abstractions (>= 2.3.0)
- Microsoft.AspNetCore.OData (>= 8.3.0)
- Microsoft.AspNetCore.SpaServices.Extensions (>= 8.0.15)
- Microsoft.ClearScript (>= 7.5.0)
- Microsoft.EntityFrameworkCore (>= 8.0.15)
- Microsoft.EntityFrameworkCore.SqlServer (>= 8.0.15)
- Newtonsoft.Json (>= 13.0.3)
- RulesEngine (>= 5.0.6)
- SendGrid (>= 9.29.3)
- Serilog (>= 4.2.0)
- Serilog.AspNetCore (>= 8.0.3)
- Serilog.Sinks.ApplicationInsights (>= 4.0.0)
- Swashbuckle.AspNetCore (>= 6.4.0)
- Twilio (>= 7.10.0)
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.9.1 | 311 | 10/2/2025 |
| 1.0.16 | 696 | 7/21/2025 |
| 1.0.14 | 672 | 7/21/2025 |
| 1.0.12 | 332 | 7/17/2025 |
| 1.0.11 | 367 | 6/5/2025 |
| 1.0.10 | 364 | 6/2/2025 |
| 1.0.9 | 463 | 5/13/2025 |
| 1.0.8 | 435 | 5/13/2025 |
| 1.0.7 | 357 | 5/8/2025 |
| 1.0.6 | 307 | 5/7/2025 |
| 1.0.5 | 358 | 5/5/2025 |
| 1.0.4 | 342 | 4/29/2025 |
| 1.0.3 | 329 | 4/29/2025 |
| 1.0.2 | 372 | 4/28/2025 |
| 1.0.1 | 352 | 4/27/2025 |
| 1.0.0 | 353 | 4/27/2025 |