Skip to content

Latest commit

History

460 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nextended

Nextended

NuGetLicenseDocumentation

A suite of 19 .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

EnglishDeutsch
Documentation portalfgilde.github.io/NextendedDokumentationsportal
Getting startedInstallationInstallation
ArchitectureOverviewÜberblick
Per-package guidesProjectsProjekte
ExamplesCommon use casesTypische Anwendungsfälle

Packages

Core libraries

PackageDescriptionNuGetDocs
Nextended.CoreFoundation library — extension methods, custom types (Money, Date, BaseId, SuperType), class mapping, deep clone, encryption, hashing and the code-generation attributes.NuGetDocs
Nextended.CacheExpression-based caching — automatic cache keys from method expressions, CacheProvider with condition-based invalidation, thread-safe AddOrGetExisting.NuGetDocs

Data access

PackageDescriptionNuGetDocs
Nextended.EFEntity Framework Core extensions — graph loading (LoadGraphAsync, IncludeAll, MultiInclude), declarative include definitions, paging, dynamic sorting and bulk operations.NuGetDocs

ASP.NET Core & web

PackageDescriptionNuGetDocs
Nextended.WebASP.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.NuGetDocs
Nextended.ResponseFiltersFluent, provider-agnostic pipeline that redacts, masks, rounds, truncates, hashes, prunes and restructures response DTOs before serialization — per request, per user, per permission.NuGetDocs
Nextended.ResponseFilters.AspNetCoreASP.NET Core adapter for Nextended.ResponseFilters — registers the pipeline as a global IAsyncResultFilter and replays structural edits against the serialized JSON tree.NuGetDocs

UI libraries

PackageDescriptionNuGetDocs
Nextended.BlazorBlazor 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.NuGetDocs
Nextended.UIWPF 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.NuGetDocs

Code generation & tooling

PackageDescriptionNuGetDocs
Nextended.ImagingImage processing — aspect-preserving resize, crop, colour replacement, brightness-based foreground picking, thumbnail generation, byte/data-URL conversion and MIME detection from magic bytes.NuGetDocs
Nextended.CodeGenRoslyn source generator — DTOs and interfaces from your entities, strongly typed classes from JSON/XML, lookup tables from Excel, and documentation from source files.NuGetDocs · Sample

.NET Aspire hosting

PackageDescriptionNuGetDocs
Nextended.AspireConditional 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.NuGetDocs
Nextended.Aspire.Hosting.SupabaseThe complete Supabase stack — Postgres, Auth (GoTrue), REST, Realtime, Storage, Studio, Kong and Edge Functions — as one composable Aspire resource.NuGetDocs · Sample
Nextended.Aspire.Hosting.N8nThe n8n workflow-automation platform as an Aspire resource, with Postgres persistence, workflow import and a typed client for triggering workflows from .NET.NuGetDocs · Sample
Nextended.Aspire.Hosting.GrafanaGrafana, Prometheus, Loki, Tempo, Promtail, cAdvisor, postgres_exporter and the OpenTelemetry Collector as composable resources with auto-provisioned datasources.NuGetDocs · Sample
Nextended.Aspire.Hosting.WebDataStudioWebDataStudio — 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.NuGetDocs · Sample
Nextended.Aspire.Hosting.AspireUIAspireUI — 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.NuGetDocs · Sample
Nextended.Aspire.Hosting.LocalAISelf-hosted, OpenAI-compatible multimodal AI — image generation, text-to-speech, speech-to-text and video — with gallery model management, GPU support and Open WebUI.NuGetDocs · Sample
Nextended.Aspire.Hosting.PhpRun 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.NuGetDocs · Sample
Nextended.Aspire.Hosting.DbToolsDatabase tools for an Aspire app host. The first: fill a database resource from a database that already exists — schema and data — from another resource in the stack or from a server it does not model. PostgreSQL, SQL Server, MySQL/MariaDB, MongoDB and Redis, each through its own engine's dump and restore tools.NuGetDocs · Sample

Quick start

dotnet add package Nextended.Core
usingNextended.Core.Extensions;usingNextended.Core.Types;usingNextended.Core.DeepClone;// Object mapping — no profiles, no configurationvardto=user.MapTo<UserDto>();vardtos=users.MapElementsTo<UserDto>();// Deep clone with reference preservationvarcopy=order.CloneDeep();// Types that carry their meaningvarprice=newMoney(99.99m,Currency.USD);vardue=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:

SampleShows
Supabase.AppHostThe full Supabase stack as one Aspire resource
AiStack.AppHostLocalAI and n8n together — self-hosted multimodal AI driven by workflows
N8n.AppHostn8n with Postgres persistence and workflow import
Grafana.AppHostGrafana, Prometheus, Loki, Tempo with auto-provisioned datasources
WebDataStudio.AppHostOne browser database studio across several databases
AspireUI.AppHostThe visual AppHost builder as a resource
Php.AppHostPHP + MySQL + phpMyAdmin + Mailpit next to a .NET web form
CodeGenSampleDTO, 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

15 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages