Skip to content

v1.0.0

Choose a tag to compare

@VPuzdriak VPuzdriak released this 29 Jan 01:49
· 20 commits to main since this release

Mapgen v1.0.0 πŸš€

We're excited to announce the first official release of Mapgen - a high-performance, compile-time object mapper for .NET using source generators!

🎯 What is Mapgen?

Mapgen is a modern alternative to runtime mapping libraries like AutoMapper and Mapster. It generates all mapping code at compile time, providing:

  • ⚑ Zero Runtime Overhead - All code generated during compilation
  • πŸ›‘οΈ Type Safety - Full compile-time type checking and error detection
  • πŸ” IDE Friendly - Complete IntelliSense, go-to-definition, and debugging support
  • 🎯 Explicit & Clear - No magic, no reflection, fully transparent and readable code
  • 🧩 Flexible - Supports complex mapping scenarios

✨ Key Features

  • Automatic Property Mapping - Properties with matching names and compatible types mapped automatically
  • Custom Property Mapping - Define custom logic using type-safe lambda expressions with MapMember()
  • Multi-Parameter Mapping - Map from multiple source objects in a single method (unique feature!)
  • Collection Mapping - Transform collections with custom logic using MapCollection()
  • Extension Methods - Auto-generated extension methods for cleaner syntax
  • Nested Object Mapping - Easily map complex object graphs
  • Ignore Properties - Explicitly exclude properties with IgnoreMember()
  • Method Reference Support - Use method references for complex mapping logic
  • Constructor Mapping - Automatic mapping to constructors when possible
  • Immutable Type Support - Full support for records and immutable objects
  • Compile-time checks - Automatic check for the mapping integrity. Destination object is always right