NanoCore 8.0.2
See the version list below for details.
dotnet add package NanoCore --version 8.0.2
NuGet\Install-Package NanoCore -Version 8.0.2
<PackageReference Include="NanoCore" Version="8.0.2" />
paket add NanoCore --version 8.0.2
#r "nuget: NanoCore, 8.0.2"
// Install NanoCore as a Cake Addin
#addin nuget:?package=NanoCore&version=8.0.2
// Install NanoCore as a Cake Tool
#tool nuget:?package=NanoCore&version=8.0.2
Nano Library
Nano is a library for rapidly building Net 8.0 applications.
The project is inspired by years of tedious repetitions, continuously re-writing similar code-snippets and libraries, to handle common functionality, not related to the business domain, such as logging, data persistence, message queuing, documentation, validation and similar.
Aspects and Benefits
The aspects and benefits of Nano, can be summarized as follows.
- Provides configurable implementations for non-business related aspects of an application,
- Combining the best practices, patterns, extensions and conventions of modern development.
- Inject providers and register custom dependencies.
- Override, extend or disable any part of Nano, not suitable for the application.
- Derive concrete implementations, enriched with functionality, from base abstractions and interfaces, for all parts of the application.
- Avoid wasting valuable development resources, on matters not related to the business.
- Remain focused on modelling data and operations of the business domain.
Wiki
Check out the Nano Wiki, and follow our Quick Guide, and have your first Nano application running within the hour.
Also check out our Nano Templates.
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. |
-
net8.0
- Asp.Versioning.Mvc (>= 8.0.0)
- Asp.Versioning.Mvc.ApiExplorer (>= 8.0.0)
- AspNetCore.HealthChecks.MySql (>= 8.0.0)
- AspNetCore.HealthChecks.Network (>= 8.0.0)
- AspNetCore.HealthChecks.Rabbitmq (>= 8.0.0)
- AspNetCore.HealthChecks.Sqlite (>= 8.0.0)
- AspNetCore.HealthChecks.SqlServer (>= 8.0.0)
- AspNetCore.HealthChecks.System (>= 8.0.0)
- AspNetCore.HealthChecks.UI (>= 8.0.0)
- AspNetCore.HealthChecks.UI.Client (>= 8.0.0)
- AspNetCore.HealthChecks.UI.InMemory.Storage (>= 8.0.0)
- Azure.Identity (>= 1.10.4)
- DynamicExpression (>= 2.3.3)
- EasyNetQ (>= 7.8.0)
- EasyNetQ.DI.Microsoft (>= 7.8.0)
- EFCoreSecondLevelCacheInterceptor (>= 4.2.0)
- EntityFrameworkCore.Triggers (>= 1.2.3)
- Google.Apis.Auth (>= 1.66.0)
- Microsoft.AspNetCore.Authentication.Facebook (>= 8.0.2)
- Microsoft.AspNetCore.Authentication.Google (>= 8.0.2)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 8.0.2)
- Microsoft.AspNetCore.Authentication.MicrosoftAccount (>= 8.0.2)
- Microsoft.AspNetCore.Authorization (>= 8.0.2)
- Microsoft.AspNetCore.DataProtection.EntityFrameworkCore (>= 8.0.2)
- Microsoft.AspNetCore.Identity.EntityFrameworkCore (>= 8.0.2)
- Microsoft.Data.SqlClient (>= 5.1.5)
- Microsoft.EntityFrameworkCore (>= 8.0.2)
- Microsoft.EntityFrameworkCore.Design (>= 8.0.0)
- Microsoft.EntityFrameworkCore.InMemory (>= 8.0.2)
- Microsoft.EntityFrameworkCore.Proxies (>= 8.0.2)
- Microsoft.EntityFrameworkCore.Relational (>= 8.0.2)
- Microsoft.EntityFrameworkCore.Sqlite (>= 8.0.2)
- Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite (>= 8.0.2)
- Microsoft.EntityFrameworkCore.SqlServer (>= 8.0.2)
- Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite (>= 8.0.2)
- Microsoft.Extensions.Configuration (>= 8.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 8.0.1)
- Microsoft.Extensions.Configuration.CommandLine (>= 8.0.0)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 8.0.0)
- Microsoft.Extensions.Configuration.FileExtensions (>= 8.0.0)
- Microsoft.Extensions.Configuration.Json (>= 8.0.0)
- Microsoft.Extensions.Configuration.UserSecrets (>= 8.0.0)
- Microsoft.Extensions.DependencyInjection (>= 8.0.0)
- Microsoft.Extensions.Hosting (>= 8.0.0)
- Microsoft.Extensions.Identity.Stores (>= 8.0.2)
- Microsoft.Extensions.Logging (>= 8.0.0)
- Microsoft.Extensions.Logging.Log4Net.AspNetCore (>= 8.0.0)
- Microsoft.Extensions.Options (>= 8.0.2)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
- Microsoft.IdentityModel.Protocols.OpenIdConnect (>= 7.3.1)
- NWebsec.AspNetCore.Middleware (>= 3.0.0)
- NWebsec.AspNetCore.Mvc (>= 3.0.0)
- Pomelo.EntityFrameworkCore.MySql (>= 8.0.0)
- Pomelo.EntityFrameworkCore.MySql.NetTopologySuite (>= 8.0.0)
- Serilog (>= 3.1.1)
- Serilog.Extensions.Logging (>= 8.0.0)
- Serilog.Sinks.Console (>= 5.0.1)
- Swashbuckle.AspNetCore (>= 6.5.0)
- Swashbuckle.AspNetCore.Annotations (>= 6.5.0)
- Vivet.AspNetCore.RequestTimeZone (>= 8.0.1)
- Z.EntityFramework.Plus.EFCore (>= 8.102.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
- Updated to .NET 8.
- Added Header annotation for Api-Client.
- Added Api-Client service registration to console application (Nano.Web -> Nano.App).
- Reordered api-client authentication types.
- Added title for health check UI.
- Expanded Cors configuration options and updated Http OPTIONS middleware to be based on Cors policy.
- BREAKING: Moved Web.Hosting.AllowedOrigins to Web.Hosting.Cors.AllowedOrigins.
- BREAKING: Update identity implementation to use POST methods instead of GET and not expose email address as query parameter.
- Fixed Login Refresh that used incorrect validation key.
- Fixed audit exception when saving read only / not mapped properties.
- Added phone number to SignUp model.
- Improved version implementation to extend to query parameter and route. Also added to swagger.
- Added generate and verify custom token to IdentityManager and BaseIdentityController.
- Changed SecurityOptions.Jwt.ExpirationInHours to SecurityOptions.Jwt.ExpirationInMinutes.
- Resharper code issues.