Skip to content

Commit 77738ab

Browse files
authored
Merge pull request #400 from ignatandrei/Facet
2 parents c8dcfb1 + 4560520 commit 77738ab

File tree

29 files changed

+1973
-165
lines changed

29 files changed

+1973
-165
lines changed

README.md

Lines changed: 50 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# RSCG - 228 Examples of Roslyn Source Code Generators / 14 created by Microsoft /
1+
# RSCG - 229 Examples of Roslyn Source Code Generators / 14 created by Microsoft /
22

3-
## Latest Update : 2025-08-16 => 16 August 2025
3+
## Latest Update : 2025-08-17 => 17 August 2025
44

55
If you want to see examples with code, please click ***[List V2](https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG)***
66

@@ -20,8 +20,30 @@ If you want to be notified each time I add a new RSCG example , please click htt
2020

2121
## Content
2222

23-
Those are the 228 Roslyn Source Code Generators that I have tested you can see and download source code example.
23+
Those are the 229 Roslyn Source Code Generators that I have tested you can see and download source code example.
2424
( including 14 from Microsoft )
25+
### 229. [Facet](https://ignatandrei.github.io/RSCG_Examples/v2/docs/Facet) , in the [Mapper](https://ignatandrei.github.io/RSCG_Examples/v2/docs/rscg-examples#mapper) category
26+
27+
Generated on : 2025-08-17 => 17 August 2025
28+
29+
<details>
30+
<summary>Expand</summary>
31+
32+
33+
34+
Author: Tim Maes
35+
36+
Generate lean DTOs, slim views, or faceted projections of your models with a single attribute.
37+
38+
Nuget: [https://www.nuget.org/packages/Facet/](https://www.nuget.org/packages/Facet/)
39+
40+
41+
Link: [https://ignatandrei.github.io/RSCG_Examples/v2/docs/Facet](https://ignatandrei.github.io/RSCG_Examples/v2/docs/Facet)
42+
43+
Source: [https://github.com/Tim-Maes/Facet/](https://github.com/Tim-Maes/Facet/)
44+
45+
</details>
46+
2547
### 228. [mvvmgen](https://ignatandrei.github.io/RSCG_Examples/v2/docs/mvvmgen) , in the [Serializer](https://ignatandrei.github.io/RSCG_Examples/v2/docs/rscg-examples#serializer) category
2648

2749
Generated on : 2025-08-16 => 16 August 2025
@@ -5473,182 +5495,175 @@ Why I have not tested : too complicated
54735495
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=https://github.com/TheFo2sh/AsyncFlow&body=https://github.com/TheFo2sh/AsyncFlow
54745496

54755497

5476-
39) [https://github.com/Tim-Maes/Facet]( https://github.com/Tim-Maes/Facet) , https://github.com/Tim-Maes/Facet
5477-
5478-
Why I have not tested : later
5479-
5480-
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=https://github.com/Tim-Maes/Facet&body=https://github.com/Tim-Maes/Facet
5481-
5482-
5483-
40) [https://github.com/wieslawsoltes/ReactiveGenerator]( https://github.com/wieslawsoltes/ReactiveGenerator) , https://github.com/wieslawsoltes/ReactiveGenerator
5498+
39) [https://github.com/wieslawsoltes/ReactiveGenerator]( https://github.com/wieslawsoltes/ReactiveGenerator) , https://github.com/wieslawsoltes/ReactiveGenerator
54845499

54855500
Why I have not tested : too complicated
54865501

54875502
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=https://github.com/wieslawsoltes/ReactiveGenerator&body=https://github.com/wieslawsoltes/ReactiveGenerator
54885503

54895504

5490-
41) [Intellenum]( https://github.com/SteveDunn/Intellenum) , https://github.com/SteveDunn/Intellenum
5505+
40) [Intellenum]( https://github.com/SteveDunn/Intellenum) , https://github.com/SteveDunn/Intellenum
54915506

54925507
Why I have not tested : not understand how to use
54935508

54945509
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=Intellenum&body=https://github.com/SteveDunn/Intellenum
54955510

54965511

5497-
42) [laker]( https://github.com/Lakerfield/Lakerfield.Rpc) , https://github.com/Lakerfield/Lakerfield.Rpc
5512+
41) [laker]( https://github.com/Lakerfield/Lakerfield.Rpc) , https://github.com/Lakerfield/Lakerfield.Rpc
54985513

54995514
Why I have not tested : too complicated
55005515

55015516
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=laker&body=https://github.com/Lakerfield/Lakerfield.Rpc
55025517

55035518

5504-
43) [LoggingDecoratorGenerator]( https://github.com/DavidFineboym/LoggingDecoratorGenerator) , https://github.com/DavidFineboym/LoggingDecoratorGenerator
5519+
42) [LoggingDecoratorGenerator]( https://github.com/DavidFineboym/LoggingDecoratorGenerator) , https://github.com/DavidFineboym/LoggingDecoratorGenerator
55055520

55065521
Why I have not tested : Microsoft have done same feature
55075522

55085523
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=LoggingDecoratorGenerator&body=https://github.com/DavidFineboym/LoggingDecoratorGenerator
55095524

55105525

5511-
44) [lucide-blazor]( https://github.com/brecht-vde/lucide-blazor/) , https://github.com/brecht-vde/lucide-blazor/
5526+
43) [lucide-blazor]( https://github.com/brecht-vde/lucide-blazor/) , https://github.com/brecht-vde/lucide-blazor/
55125527

55135528
Why I have not tested : issue opened
55145529

55155530
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=lucide-blazor&body=https://github.com/brecht-vde/lucide-blazor/
55165531

55175532

5518-
45) [ManagedDotnetProfiler]( https://github.com/kevingosse/ManagedDotnetProfiler) , https://github.com/kevingosse/ManagedDotnetProfiler
5533+
44) [ManagedDotnetProfiler]( https://github.com/kevingosse/ManagedDotnetProfiler) , https://github.com/kevingosse/ManagedDotnetProfiler
55195534

55205535
Why I have not tested : too complicated
55215536

55225537
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=ManagedDotnetProfiler&body=https://github.com/kevingosse/ManagedDotnetProfiler
55235538

55245539

5525-
46) [Maui.BindableProperty.Generator]( https://github.com/rrmanzano/maui-bindableproperty-generator) , https://github.com/rrmanzano/maui-bindableproperty-generator
5540+
45) [Maui.BindableProperty.Generator]( https://github.com/rrmanzano/maui-bindableproperty-generator) , https://github.com/rrmanzano/maui-bindableproperty-generator
55265541

55275542
Why I have not tested : later
55285543

55295544
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=Maui.BindableProperty.Generator&body=https://github.com/rrmanzano/maui-bindableproperty-generator
55305545

55315546

5532-
47) [Minerals.AutoCQRS]( https://github.com/SzymonHalucha/Minerals.AutoCQRS) , https://github.com/SzymonHalucha/Minerals.AutoCQRS
5547+
46) [Minerals.AutoCQRS]( https://github.com/SzymonHalucha/Minerals.AutoCQRS) , https://github.com/SzymonHalucha/Minerals.AutoCQRS
55335548

55345549
Why I have not tested : later
55355550

55365551
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=Minerals.AutoCQRS&body=https://github.com/SzymonHalucha/Minerals.AutoCQRS
55375552

55385553

5539-
48) [Minerals.AutoDomain]( https://github.com/SzymonHalucha/Minerals.AutoDomain) , https://github.com/SzymonHalucha/Minerals.AutoDomain
5554+
47) [Minerals.AutoDomain]( https://github.com/SzymonHalucha/Minerals.AutoDomain) , https://github.com/SzymonHalucha/Minerals.AutoDomain
55405555

55415556
Why I have not tested : later
55425557

55435558
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=Minerals.AutoDomain&body=https://github.com/SzymonHalucha/Minerals.AutoDomain
55445559

55455560

5546-
49) [observable]( https://github.com/notanaverageman/Bindables) , https://github.com/notanaverageman/Bindables
5561+
48) [observable]( https://github.com/notanaverageman/Bindables) , https://github.com/notanaverageman/Bindables
55475562

55485563
Why I have not tested : later
55495564

55505565
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=observable&body=https://github.com/notanaverageman/Bindables
55515566

55525567

5553-
50) [PolySharp]( https://github.com/Sergio0694/PolySharp) , https://github.com/Sergio0694/PolySharp
5568+
49) [PolySharp]( https://github.com/Sergio0694/PolySharp) , https://github.com/Sergio0694/PolySharp
55545569

55555570
Why I have not tested : too complicated
55565571

55575572
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=PolySharp&body=https://github.com/Sergio0694/PolySharp
55585573

55595574

5560-
51) [RazorGen]( https://github.com/dartk/RazorGen) , https://github.com/dartk/RazorGen
5575+
50) [RazorGen]( https://github.com/dartk/RazorGen) , https://github.com/dartk/RazorGen
55615576

55625577
Why I have not tested : later
55635578

55645579
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=RazorGen&body=https://github.com/dartk/RazorGen
55655580

55665581

5567-
52) [SerdeDn]( https://github.com/serdedotnet/serde) , https://github.com/serdedotnet/serde
5582+
51) [SerdeDn]( https://github.com/serdedotnet/serde) , https://github.com/serdedotnet/serde
55685583

55695584
Why I have not tested : serializer. Done by MSFT with System.Text.Json
55705585

55715586
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=SerdeDn&body=https://github.com/serdedotnet/serde
55725587

55735588

5574-
53) [SogePoco]( https://github.com/d-p-y/SogePoco) , https://github.com/d-p-y/SogePoco
5589+
52) [SogePoco]( https://github.com/d-p-y/SogePoco) , https://github.com/d-p-y/SogePoco
55755590

55765591
Why I have not tested : too complicated
55775592

55785593
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=SogePoco&body=https://github.com/d-p-y/SogePoco
55795594

55805595

5581-
54) [SourceCrafter.HttpServiceClientGenerator]( https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/) , https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/
5596+
53) [SourceCrafter.HttpServiceClientGenerator]( https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/) , https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/
55825597

55835598
Why I have not tested : later
55845599

55855600
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=SourceCrafter.HttpServiceClientGenerator&body=https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/
55865601

55875602

5588-
55) [ST.NSwag.ServerSourceGenerator]( https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator) , https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator
5603+
54) [ST.NSwag.ServerSourceGenerator]( https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator) , https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator
55895604

55905605
Why I have not tested : later
55915606

55925607
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=ST.NSwag.ServerSourceGenerator&body=https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator
55935608

55945609

5595-
56) [StrongInject]( https://github.com/YairHalberstadt/stronginject/) , https://github.com/YairHalberstadt/stronginject/
5610+
55) [StrongInject]( https://github.com/YairHalberstadt/stronginject/) , https://github.com/YairHalberstadt/stronginject/
55965611

55975612
Why I have not tested : later
55985613

55995614
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=StrongInject&body=https://github.com/YairHalberstadt/stronginject/
56005615

56015616

5602-
57) [TeuJson]( https://github.com/Terria-K/TeuJson) , https://github.com/Terria-K/TeuJson
5617+
56) [TeuJson]( https://github.com/Terria-K/TeuJson) , https://github.com/Terria-K/TeuJson
56035618

56045619
Why I have not tested : json a class, was done in System.Text.Json
56055620

56065621
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=TeuJson&body=https://github.com/Terria-K/TeuJson
56075622

56085623

5609-
58) [Tinyhand]( https://github.com/archi-Doc/Tinyhand) , https://github.com/archi-Doc/Tinyhand
5624+
57) [Tinyhand]( https://github.com/archi-Doc/Tinyhand) , https://github.com/archi-Doc/Tinyhand
56105625

56115626
Why I have not tested : tried, need documentation
56125627

56135628
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=Tinyhand&body=https://github.com/archi-Doc/Tinyhand
56145629

56155630

5616-
59) [TupleOverloadGenerator]( https://github.com/ProphetLamb/TupleOverloadGenerator) , https://github.com/ProphetLamb/TupleOverloadGenerator
5631+
58) [TupleOverloadGenerator]( https://github.com/ProphetLamb/TupleOverloadGenerator) , https://github.com/ProphetLamb/TupleOverloadGenerator
56175632

56185633
Why I have not tested : too complicated
56195634

56205635
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=TupleOverloadGenerator&body=https://github.com/ProphetLamb/TupleOverloadGenerator
56215636

56225637

5623-
60) [TypealizR]( https://github.com/earloc/TypealizR) , https://github.com/earloc/TypealizR
5638+
59) [TypealizR]( https://github.com/earloc/TypealizR) , https://github.com/earloc/TypealizR
56245639

56255640
Why I have not tested : depends on Microsoft.Extensions.Localization
56265641

56275642
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=TypealizR&body=https://github.com/earloc/TypealizR
56285643

56295644

5630-
61) [UnitTestBlazor]( https://github.com/bUnit-dev/bUnit) , https://github.com/bUnit-dev/bUnit
5645+
60) [UnitTestBlazor]( https://github.com/bUnit-dev/bUnit) , https://github.com/bUnit-dev/bUnit
56315646

56325647
Why I have not tested : issue opened
56335648

56345649
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=UnitTestBlazor&body=https://github.com/bUnit-dev/bUnit
56355650

56365651

5637-
62) [ValueLink]( https://github.com/archi-Doc/ValueLink) , https://github.com/archi-Doc/ValueLink
5652+
61) [ValueLink]( https://github.com/archi-Doc/ValueLink) , https://github.com/archi-Doc/ValueLink
56385653

56395654
Why I have not tested : too complicated
56405655

56415656
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=ValueLink&body=https://github.com/archi-Doc/ValueLink
56425657

56435658

5644-
63) [VisitorPatternGenerator]( https://github.com/hikarin522/VisitorPatternGenerator/) , https://github.com/hikarin522/VisitorPatternGenerator/
5659+
62) [VisitorPatternGenerator]( https://github.com/hikarin522/VisitorPatternGenerator/) , https://github.com/hikarin522/VisitorPatternGenerator/
56455660

56465661
Why I have not tested : issue opened
56475662

56485663
https://github.com/ignatandrei/RSCG_Examples/issues/new?title=VisitorPatternGenerator&body=https://github.com/hikarin522/VisitorPatternGenerator/
56495664

56505665

5651-
64) [WrapperValueObject]( https://github.com/martinothamar/WrapperValueObject) , https://github.com/martinothamar/WrapperValueObject
5666+
63) [WrapperValueObject]( https://github.com/martinothamar/WrapperValueObject) , https://github.com/martinothamar/WrapperValueObject
56525667

56535668
Why I have not tested : not maintained as in readme
56545669

later.md

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Just later
22

3-
## Latest Update : 2025-08-16 => 16 August 2025
3+
## Latest Update : 2025-08-17 => 17 August 2025
44

55

66

@@ -86,55 +86,49 @@ Why I have not tested : later
8686

8787

8888

89-
14) [https://github.com/Tim-Maes/Facet]( https://github.com/Tim-Maes/Facet) , https://github.com/Tim-Maes/Facet
89+
14) [Maui.BindableProperty.Generator]( https://github.com/rrmanzano/maui-bindableproperty-generator) , https://github.com/rrmanzano/maui-bindableproperty-generator
9090

9191
Why I have not tested : later
9292

9393

9494

95-
15) [Maui.BindableProperty.Generator]( https://github.com/rrmanzano/maui-bindableproperty-generator) , https://github.com/rrmanzano/maui-bindableproperty-generator
95+
15) [Minerals.AutoCQRS]( https://github.com/SzymonHalucha/Minerals.AutoCQRS) , https://github.com/SzymonHalucha/Minerals.AutoCQRS
9696

9797
Why I have not tested : later
9898

9999

100100

101-
16) [Minerals.AutoCQRS]( https://github.com/SzymonHalucha/Minerals.AutoCQRS) , https://github.com/SzymonHalucha/Minerals.AutoCQRS
101+
16) [Minerals.AutoDomain]( https://github.com/SzymonHalucha/Minerals.AutoDomain) , https://github.com/SzymonHalucha/Minerals.AutoDomain
102102

103103
Why I have not tested : later
104104

105105

106106

107-
17) [Minerals.AutoDomain]( https://github.com/SzymonHalucha/Minerals.AutoDomain) , https://github.com/SzymonHalucha/Minerals.AutoDomain
107+
17) [observable]( https://github.com/notanaverageman/Bindables) , https://github.com/notanaverageman/Bindables
108108

109109
Why I have not tested : later
110110

111111

112112

113-
18) [observable]( https://github.com/notanaverageman/Bindables) , https://github.com/notanaverageman/Bindables
113+
18) [RazorGen]( https://github.com/dartk/RazorGen) , https://github.com/dartk/RazorGen
114114

115115
Why I have not tested : later
116116

117117

118118

119-
19) [RazorGen]( https://github.com/dartk/RazorGen) , https://github.com/dartk/RazorGen
119+
19) [SourceCrafter.HttpServiceClientGenerator]( https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/) , https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/
120120

121121
Why I have not tested : later
122122

123123

124124

125-
20) [SourceCrafter.HttpServiceClientGenerator]( https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/) , https://github.com/pedro-gilmora/SourceCrafter.HttpServiceClientGenerator/
125+
20) [ST.NSwag.ServerSourceGenerator]( https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator) , https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator
126126

127127
Why I have not tested : later
128128

129129

130130

131-
21) [ST.NSwag.ServerSourceGenerator]( https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator) , https://github.com/s-tarasov/ST.NSwag.ServerSourceGenerator
132-
133-
Why I have not tested : later
134-
135-
136-
137-
22) [StrongInject]( https://github.com/YairHalberstadt/stronginject/) , https://github.com/YairHalberstadt/stronginject/
131+
21) [StrongInject]( https://github.com/YairHalberstadt/stronginject/) , https://github.com/YairHalberstadt/stronginject/
138132

139133
Why I have not tested : later
140134

v2/Generator/all.csv

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,3 +227,4 @@ Nr,Key,Source,Category
227227
226,requiredenum, https://github.com/emptycoder/RequiredEnum,Enum
228228
227,UtilityVerse.Copy, https://github.com/purkayasta/TheUtilityVerse,Clone
229229
228,mvvmgen, https://github.com/thomasclaudiushuber/mvvmgen,Serializer
230+
229,Facet, https://github.com/Tim-Maes/Facet/,Mapper

v2/RSCGExamplesData/GeneratorDataRec.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1377,5 +1377,11 @@
13771377
"Category": 16,
13781378
"dtStart": "2025-08-16T00:00:00",
13791379
"show": true
1380+
},
1381+
{
1382+
"ID":"Facet",
1383+
"Category": 6,
1384+
"dtStart": "2025-08-17T00:00:00",
1385+
"show": true
13801386
}
13811387
]

v2/RSCGExamplesData/NoExample.json

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -871,10 +871,6 @@
871871
"name":"https://github.com/buchmiet/FastFsm",
872872
"why":"later"
873873
},
874-
{"ID":222,
875-
"name":"https://github.com/Tim-Maes/Facet",
876-
"why":"later"
877-
},
878874
{
879875
"ID":224,
880876
"name":"https://github.com/pstlnce/unflat",

0 commit comments

Comments
 (0)