Skip to content

Latest commit

 

History

412 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nextended

Nextended

NuGet License Documentation

A suite of 18 .NET libraries: extension methods, custom types, caching, EF Core, ASP.NET Core response filtering, source generation and .NET Aspire hosting integrations.

📖 Documentation (English) · 📖 Dokumentation (Deutsch)

Note This suite was previously published as nExt. It was renamed to Nextended and now targets .NET 8, 9 and 10. See the migration guide.

Documentation

English Deutsch
Documentation portal fgilde.github.io/Nextended Dokumentationsportal
Getting started Installation Installation
Architecture Overview Überblick
Per-package guides Projects Projekte
Examples Common use cases Typische Anwendungsfälle

Packages

Core libraries

Package Description NuGet Docs
Nextended.Core Foundation library — extension methods, custom types (Money, Date, BaseId, SuperType), class mapping, deep clone, encryption, hashing and the code-generation attributes. NuGet Docs
Nextended.Cache Expression-based caching — automatic cache keys from method expressions, CacheProvider with condition-based invalidation, thread-safe AddOrGetExisting. NuGet Docs

Data access

Package Description NuGet Docs
Nextended.EF Entity Framework Core extensions — graph loading (LoadGraphAsync, IncludeAll, MultiInclude), declarative include definitions, paging, dynamic sorting and bulk operations. NuGet Docs

ASP.NET Core & web

Package Description NuGet Docs
Nextended.Web ASP.NET Core utilities — zero-config OData (AddODataAuto), composable IQueryable OData appliers, strongly typed controller URLs, streaming download helpers and a background executor that can replay a captured request. NuGet Docs
Nextended.ResponseFilters Fluent, provider-agnostic pipeline that redacts, masks, rounds, truncates, hashes, prunes and restructures response DTOs before serialization — per request, per user, per permission. NuGet Docs
Nextended.ResponseFilters.AspNetCore ASP.NET Core adapter for Nextended.ResponseFilters — registers the pipeline as a global IAsyncResultFilter and replays structural edits against the serialized JSON tree. NuGet Docs

UI libraries

Package Description NuGet Docs
Nextended.Blazor Blazor helpers — IBrowserFile extensions (bytes, data URLs, downloads), a hierarchical model for browsing inside uploaded zip/tar/rar archives, MIME-type detection and component-parameter reflection. NuGet Docs
Nextended.UI WPF and Windows desktop helpers — a global input-binding manager with hold/sequence matching, DirectInput and XInput gamepad readers, key-bind capture controls, converters, behaviours, markup extensions and runtime-defined PropertyGrid types. NuGet Docs

Code generation & tooling

Package Description NuGet Docs
Nextended.Imaging Image processing — aspect-preserving resize, crop, colour replacement, brightness-based foreground picking, thumbnail generation, byte/data-URL conversion and MIME detection from magic bytes. NuGet Docs
Nextended.CodeGen Roslyn source generator — DTOs and interfaces from your entities, strongly typed classes from JSON/XML, lookup tables from Excel, and documentation from source files. NuGet Docs · Sample

.NET Aspire hosting

Package Description NuGet Docs
Nextended.Aspire Conditional AppHost builder extensions — WithReferenceIf / WaitForIf / WithExplicitStartIf, strongly typed environment variables from config objects, HTTPS dev-cert wiring, Docker guards, GitHub-source resources and npm app discovery. NuGet Docs
Nextended.Aspire.Hosting.Supabase The complete Supabase stack — Postgres, Auth (GoTrue), REST, Realtime, Storage, Studio, Kong and Edge Functions — as one composable Aspire resource. NuGet Docs · Sample
Nextended.Aspire.Hosting.N8n The n8n workflow-automation platform as an Aspire resource, with Postgres persistence, workflow import and a typed client for triggering workflows from .NET. NuGet Docs · Sample
Nextended.Aspire.Hosting.Grafana Grafana, Prometheus, Loki, Tempo, Promtail, cAdvisor, postgres_exporter and the OpenTelemetry Collector as composable resources with auto-provisioned datasources. NuGet Docs · Sample
Nextended.Aspire.Hosting.WebDataStudio WebDataStudio — a browser database studio for PostgreSQL, MySQL, SQL Server, SQLite, Oracle, DuckDB, ClickHouse, MongoDB and Redis — wired to the databases of your stack, with accounts and roles, an optional SQL assistant, and an MCP endpoint for AI agents. NuGet Docs · Sample
Nextended.Aspire.Hosting.AspireUI AspireUI — the visual AppHost builder — as a resource inside your own Aspire stack, with an optional pre-seeded admin user and a starter stack built from your project paths. NuGet Docs · Sample
Nextended.Aspire.Hosting.LocalAI Self-hosted, OpenAI-compatible multimodal AI — image generation, text-to-speech, speech-to-text and video — with gallery model management, GPU support and Open WebUI. NuGet Docs · Sample
Nextended.Aspire.Hosting.Php Run PHP endpoints inside your Aspire stack — a docroot folder or a single router script served by PHP's built-in web server, with php.ini settings as fluent options. NuGet Docs · Sample

Quick start

dotnet add package Nextended.Core
using Nextended.Core.Extensions;
using Nextended.Core.Types;
using Nextended.Core.DeepClone;

// Object mapping — no profiles, no configuration
var dto = user.MapTo<UserDto>();
var dtos = users.MapElementsTo<UserDto>();

// Deep clone with reference preservation
var copy = order.CloneDeep();

// Types that carry their meaning
var price = new Money(99.99m, Currency.USD);
var due   = Date.Today.AddDays(30);      // a date, without a time component

// Extension methods
"hello world".ToPascalCase();   // "HelloWorld"
"hello world".ToCamel();        // "helloWorld"
DateTime.Today.AddWeekDays(5);  // skips weekends

Runnable samples

Every Aspire integration and the source generator ship with a sample project you can start:

Sample Shows
Supabase.AppHost The full Supabase stack as one Aspire resource
AiStack.AppHost LocalAI and n8n together — self-hosted multimodal AI driven by workflows
N8n.AppHost n8n with Postgres persistence and workflow import
Grafana.AppHost Grafana, Prometheus, Loki, Tempo with auto-provisioned datasources
WebDataStudio.AppHost One browser database studio across several databases
AspireUI.AppHost The visual AppHost builder as a resource
Php.AppHost PHP + MySQL + phpMyAdmin + Mailpit next to a .NET web form
CodeGenSample DTO, JSON, Excel and documentation generation, with the generated output checked in

Repository layout

Nextended.sln
├─ Nextended.Core/               foundation: extensions, types, mapping, facets
├─ Nextended.Cache/              expression-based caching
├─ Nextended.EF/                 EF Core query and graph extensions
├─ Nextended.Web/                ASP.NET Core + OData
├─ Nextended.ResponseFilters/            response shaping pipeline (provider-agnostic)
├─ Nextended.ResponseFilters.AspNetCore/ MVC adapter for the above
├─ Nextended.Blazor/             Blazor helpers
├─ Nextended.UI/                 WPF / Windows desktop
├─ Nextended.Imaging/            image processing (Windows)
├─ Nextended.CodeGen/            Roslyn source generator
├─ Nextended.Aspire*/            .NET Aspire hosting integrations
├─ Tests/                        unit tests and the runnable sample projects
├─ docs/                         documentation site (English), docs/de (German)
│  └─ data/packages.json        single source of truth for every package listing
└─ tools/Update-PackageDocs.ps1  regenerates the listings, README blocks and the docs icon

Contributing

Pull requests are welcome.

Package listings, README headers/footers and the documentation-site icon are generated. Edit docs/data/packages.json — never the generated blocks — and then run:

pwsh tools/Update-PackageDocs.ps1

To verify in CI that nothing has drifted:

pwsh tools/Update-PackageDocs.ps1 -Check

The icon is a single file, icon.png, at the repository root. Replace it and re-run the generator: every NuGet package, every README and the documentation site pick up the new one.

License

GPL-3.0-or-later — see LICENSE.

Links

About

A suite of .NET libraries: extension methods, custom types, caching, EF Core, ASP.NET Core response filtering, source generation and .NET Aspire hosting integrations.

Resources

Contributing

Stars

13 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages