Nextended
Welcome to Nextended - a comprehensive suite of .NET libraries providing powerful extension methods, custom types, utilities, and code generation tools to enhance your .NET development experience.
Overview
Nextended is a collection of libraries designed to simplify and accelerate .NET development across various platforms and frameworks. Originally known as βnExtβ, the library was updated and renamed to Nextended with full support for modern .NET versions.
π¦ Package Ecosystem
The Nextended suite consists of multiple specialized packages, each serving a specific purpose:
Core Libraries
- Nextended.Core - The foundation library with essential extension methods and custom types
- Nextended.Cache - Caching utilities and extensions
- Nextended.EF - Entity Framework Core extensions
UI Libraries
- Nextended.Blazor - Blazor-specific helpers and components
- Nextended.UI - WPF and Windows Forms utilities
- Nextended.Web - ASP.NET Core and web application helpers
Specialized Libraries
- Nextended.Imaging - Image processing and manipulation utilities
- Nextended.CodeGen - Source code generation tools (attributes, JSON/Excel to classes, DTO generation)
- Nextended.Aspire - .NET Aspire framework extensions for distributed applications
- Nextended.AutoDto - Automatic DTO generation utilities
π Quick Start
Installation
Install the core package via NuGet:
dotnet add package Nextended.Core
Or install specific packages based on your needs:
dotnet add package Nextended.Blazor
dotnet add package Nextended.EF
dotnet add package Nextended.CodeGen
Basic Usage
using Nextended.Core.Extensions;
using Nextended.Core.Types;
// Use powerful extension methods
var user = new User { FirstName = "John", LastName = "Doe" };
var userDto = user.MapTo<UserDto>();
// Work with custom types
var price = new Money(99.99m, Currency.USD);
var today = Date.Today;
π Documentation
Getting Started
Projects
- All Projects Overview
- Browse individual project documentation in the projects folder
Examples
API Reference
- Extension Methods Reference
- Custom Types Reference
- Class Mapping Reference
- Helper Utilities Reference
- Encryption & Security Reference
π― Key Features
Extension Methods
Nextended.Core provides extensive extension methods for:
- String manipulation
- DateTime operations
- Collection operations (LINQ enhancements)
- Type reflection and conversion
- Object mapping and cloning
- Task and async utilities
- And many moreβ¦
Custom Types
Powerful custom types that solve common problems:
- Money - Precise decimal type for financial calculations
- Date - Date-only type without time components
- BaseId - Generic strongly-typed ID wrapper
- SuperType - Advanced entity type with subtype relationships
- Range - Generic range type for intervals
Class Mapping
Fast and flexible object mapping without external dependencies:
// Simple mapping
var dto = sourceObject.MapTo<TargetDto>();
// Advanced mapping with settings
var settings = ClassMappingSettings.Default
.IgnoreProperties<Source>(s => s.InternalField)
.AddConverter<string, DateTime>(DateTime.Parse);
var result = source.MapTo<Target>(settings);
See the Class Mapping Reference for complete documentation, examples, and usage scenarios.
Code Generation
Generate code at compile-time from various sources:
- Auto-generate DTOs from your domain models
- Create strongly-typed classes from JSON/XML configuration files
- Generate data classes from Excel spreadsheets
- Full compile-time validation and IntelliSense support
π€ Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Links
π¬ Support
For issues, questions, or feature requests, please use the GitHub Issues page.