riok/mapperly

A .NET source generator for generating object mappings. No runtime reflection.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 48 minutes ago
Added to GitGenius on September 16th, 2026
Created on February 14th, 2022
Open Issues & Pull Requests: 73 (+0)
GitHub issues: Enabled
Number of forks: 230
Total Stargazers: 4,176 (+1)
Total Subscribers: 23 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 36.5 hours
Mean response time: 14.6 days
90th percentile: 22.3 days
Tracked items: 181

Most active contributors

Sign in to see contributor activity.

How this project is maintained

About 4% of issues opened in the past year have never received a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. 82% of issues opened in the past year have been closed, leaving a working backlog. Three people close 96% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 31
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 572 days
Stale 30+ days: 28
Stale 90+ days: 25

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (91)
  • enhancement (87)
  • good first issue (7)
  • breaking-change (5)
  • documentation (3)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Mapperly is a .NET source generator that creates object mappings at compile time without runtime reflection.

Object mapping between different types is a common task in .NET applications, particularly when working with domain models, DTOs, and API contracts. Mapperly solves this by generating mapping code during compilation using Roslyn, the .NET compiler platform. Rather than relying on runtime reflection to discover and execute mappings, the tool analyzes your code at compile time and produces strongly-typed mapping methods. This approach eliminates the performance overhead of reflection and provides compile-time safety, catching mapping errors before runtime.

Mapperly suits projects where performance matters or where you want mapping logic to be explicit and verifiable. It works well in layered architectures that heavily use DTOs, microservices, and any application where you need predictable, zero-overhead object transformations. If your project already uses reflection-based mappers and you are concerned about startup time or runtime performance, switching to a source generator approach offers measurable benefits. The tool generates human-readable C# code, making it easy to understand exactly what mapping logic is being executed and to debug issues directly in the generated output.

The project maintains a steady cadence of releases with regular updates addressing edge cases and expanding mapping capabilities. Development activity shows consistent engagement with issues and pull requests, indicating active maintenance and responsiveness to user feedback. The codebase demonstrates attention to code quality and test coverage, with comprehensive test suites validating the source generation logic across various mapping scenarios. Documentation is well-maintained through the project website, providing clear guidance on configuration and usage patterns.