docs: dark theme, SEO optimization, comparison page#95
Merged
cloud-hai-vo merged 1 commit intomainfrom Mar 31, 2026
Merged
Conversation
- Switch to just-the-docs theme with dark color scheme - Add jekyll-sitemap + jekyll-seo-tag plugins - Add robots.txt with sitemap reference - Add "EggMapper vs AutoMapper" comparison page (SEO target) - Add front matter with nav_order to all existing doc pages - Set GitHub repo homepage URL to eggspot.github.io/EggMapper - Add search, back-to-top, aux navigation links Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
f77efe0 to
d9b3cd9
Compare
Contributor
📊 Benchmark Results
🔵 Flat Mapping — 10-property object
🟡 Flattening — 2 nested objects → 8 flat properties
🟣 Deep Mapping — 2 nested address objects
🟢 Complex Mapping — nested object + collection
🟠 Collection — 100-item
|
| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Manual | 1.915 μs | 0.6251 μs | 0.0343 μs | 1.875 μs | 1.934 μs | 1.935 μs | 1.00 | 0.02 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 |
| EggMapper | 1.929 μs | 0.2442 μs | 0.0134 μs | 1.921 μs | 1.922 μs | 1.945 μs | 1.01 | 0.02 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 |
| AutoMapper | 2.586 μs | 0.1989 μs | 0.0109 μs | 2.574 μs | 2.588 μs | 2.595 μs | 1.35 | 0.02 | 2 | 0.6065 | 0.0191 | 9.95 KB | 1.15 |
| Mapster | 1.754 μs | 0.1620 μs | 0.0089 μs | 1.744 μs | 1.758 μs | 1.760 μs | 0.92 | 0.01 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 |
| MapperlyMap | 1.799 μs | 0.2804 μs | 0.0154 μs | 1.782 μs | 1.803 μs | 1.812 μs | 0.94 | 0.02 | 1 | 0.5283 | 0.0172 | 8.65 KB | 1.00 |
| AgileMapper | 2.602 μs | 1.0395 μs | 0.0570 μs | 2.565 μs | 2.572 μs | 2.667 μs | 1.36 | 0.03 | 2 | 0.5417 | 0.0153 | 8.91 KB | 1.03 |
🟠 Collection — 100-item List<T>
| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Manual | 5.726 μs | 1.4273 μs | 0.0782 μs | 5.637 μs | 5.756 μs | 5.785 μs | 1.00 | 0.02 | 1 | 1.6708 | 0.0916 | 27.4 KB | 1.00 |
| EggMapper | 6.205 μs | 1.8282 μs | 0.1002 μs | 6.096 μs | 6.224 μs | 6.294 μs | 1.08 | 0.02 | 1 | 1.6708 | 0.0916 | 27.4 KB | 1.00 |
| AutoMapper | 6.961 μs | 5.4801 μs | 0.3004 μs | 6.709 μs | 6.880 μs | 7.293 μs | 1.22 | 0.05 | 1 | 1.7548 | 0.1068 | 28.7 KB | 1.05 |
| Mapster | 6.405 μs | 0.7315 μs | 0.0401 μs | 6.359 μs | 6.425 μs | 6.431 μs | 1.12 | 0.01 | 1 | 1.6708 | 0.0916 | 27.4 KB | 1.00 |
| MapperlyMap | 5.959 μs | 1.6135 μs | 0.0884 μs | 5.871 μs | 5.959 μs | 6.047 μs | 1.04 | 0.02 | 1 | 1.6785 | 0.0992 | 27.42 KB | 1.00 |
| AgileMapper | 5.538 μs | 1.0829 μs | 0.0594 μs | 5.482 μs | 5.533 μs | 5.600 μs | 0.97 | 0.01 | 1 | 1.0223 | 0.0610 | 16.72 KB | 0.61 |
🟠 Collection — 100-item List<T>
| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Manual | 16.88 μs | 3.135 μs | 0.172 μs | 16.74 μs | 16.84 μs | 17.07 μs | 1.00 | 0.01 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 |
| EggMapper | 17.68 μs | 6.400 μs | 0.351 μs | 17.43 μs | 17.52 μs | 18.08 μs | 1.05 | 0.02 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 |
| AutoMapper | 22.31 μs | 11.874 μs | 0.651 μs | 21.62 μs | 22.40 μs | 22.91 μs | 1.32 | 0.04 | 1 | 5.7678 | 1.4343 | 94.34 KB | 1.10 |
| Mapster | 18.43 μs | 11.542 μs | 0.633 μs | 17.71 μs | 18.70 μs | 18.88 μs | 1.09 | 0.03 | 1 | 5.2490 | 1.3123 | 85.99 KB | 1.00 |
| MapperlyMap | 19.12 μs | 8.749 μs | 0.480 μs | 18.57 μs | 19.32 μs | 19.46 μs | 1.13 | 0.03 | 1 | 5.2490 | 1.2817 | 86.02 KB | 1.00 |
| AgileMapper | 20.20 μs | 3.835 μs | 0.210 μs | 20.06 μs | 20.09 μs | 20.44 μs | 1.20 | 0.02 | 1 | 5.2795 | 1.3123 | 86.25 KB | 1.00 |
⚪ Startup / Configuration time
| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| EggMapperStartup | 1,286.768 μs | 1,781.7623 μs | 97.6644 μs | 1,181.964 μs | 1,303.110 μs | 1,375.231 μs | 1.004 | 0.09 | 3 | 3.9063 | 1.9531 | 95.23 KB | 1.00 |
| AutoMapperStartup | 372.311 μs | 1,078.4065 μs | 59.1111 μs | 328.559 μs | 348.817 μs | 439.557 μs | 0.290 | 0.04 | 2 | 5.8594 | - | 104.04 KB | 1.09 |
| MapsterStartup | 2.501 μs | 0.1898 μs | 0.0104 μs | 2.489 μs | 2.506 μs | 2.508 μs | 0.002 | 0.00 | 1 | 0.7019 | 0.0267 | 11.51 KB | 0.12 |
EggMapper.Benchmarks.ColdStartBenchmark-report-github
| Method | Mean | Error | StdDev | Min | Median | Max | Ratio | RatioSD | Rank | Gen0 | Gen1 | Allocated | Alloc Ratio |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| EggMapper | 1.303 ms | 1.690 ms | 0.0926 ms | 1.199 ms | 1.338 ms | 1.374 ms | 1.00 | 0.09 | 1 | 5.8594 | 3.9063 | 96.31 KB | 1.00 |
| AutoMapper | 4.004 ms | 8.019 ms | 0.4395 ms | 3.671 ms | 3.839 ms | 4.502 ms | 3.08 | 0.35 | 2 | 15.6250 | 7.8125 | 310.71 KB | 3.23 |
| Mapster | 4.139 ms | 14.219 ms | 0.7794 ms | 3.367 ms | 4.125 ms | 4.926 ms | 3.19 | 0.56 | 2 | 39.0625 | 15.6250 | 753.92 KB | 7.83 |
📝 Notes
- Each benchmark class is decorated with
[MemoryDiagnoser]and[RankColumn]. - The global config (see
src/EggMapper.Benchmarks/Program.cs) addsMin,Median, andMaxcolumns. - Manual is the hand-written baseline (ratio = 1.00). A ratio < 1 means faster than manual.
- Benchmarks run on GitHub-hosted runners — absolute times may vary between runs; focus on Ratio for comparisons.
- To reproduce locally:
cd src/EggMapper.Benchmarks dotnet run --configuration Release -- --filter '*'
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
After merge
https://eggspot.github.io/EggMapper/SEO next steps (manual, after site is live)
🤖 Generated with Claude Code