diff --git a/v2/rscg_examples/Maestria.TypeProviders/description.json b/v2/rscg_examples/Maestria.TypeProviders/description.json
new file mode 100644
index 000000000..6dc958404
--- /dev/null
+++ b/v2/rscg_examples/Maestria.TypeProviders/description.json
@@ -0,0 +1,22 @@
+{
+ "generator":{
+ "name":"Maestria.TypeProviders",
+ "nuget":[
+ "https://www.nuget.org/packages/Maestria.TypeProviders/"
+ ],
+ "link":"https://github.com/MaestriaNet/TypeProviders",
+ "author":"Fábio Monteiro Naspolini",
+ "source":"https://github.com/MaestriaNet/TypeProviders"
+ },
+ "data":{
+ "goodFor":["Generating strong typed code from Excel."],
+ "csprojDemo":"DemoExcel.csproj",
+ "csFiles":["Program.cs","MyExcelPerson.cs","Person.cs"],
+ "excludeDirectoryGenerated":[""],
+ "includeAdditionalFiles":[""]
+ },
+ "links":{
+ "blog":"",
+ "video":""
+ }
+}
\ No newline at end of file
diff --git a/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel.slnx b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel.slnx
new file mode 100644
index 000000000..003eeaa59
--- /dev/null
+++ b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel.slnx
@@ -0,0 +1,3 @@
+
+
+
diff --git a/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/DemoExcel.csproj b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/DemoExcel.csproj
new file mode 100644
index 000000000..19c2a2fb1
--- /dev/null
+++ b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/DemoExcel.csproj
@@ -0,0 +1,29 @@
+
+
+
+ Exe
+ net10.0
+ enable
+ enable
+
+
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
+
+ PreserveNewest
+
+
+
+
+ true
+ $(BaseIntermediateOutputPath)\GX
+
+
diff --git a/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/MyExcel.xlsx b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/MyExcel.xlsx
new file mode 100644
index 000000000..577167380
Binary files /dev/null and b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/MyExcel.xlsx differ
diff --git a/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/MyExcelPerson.cs b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/MyExcelPerson.cs
new file mode 100644
index 000000000..3787f5f25
--- /dev/null
+++ b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/MyExcelPerson.cs
@@ -0,0 +1,6 @@
+namespace DemoExcel;
+
+public partial class MyExcelPerson
+{
+ public string FullName() => $"{FirstName} {LastName}";
+}
diff --git a/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/Person.cs b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/Person.cs
new file mode 100644
index 000000000..d4082932a
--- /dev/null
+++ b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/Person.cs
@@ -0,0 +1,10 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace DemoExcel;
+
+[ExcelProvider(TemplatePath = @"MyExcel.xlsx")]
+public partial class MyExcelPerson
+{
+}
diff --git a/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/Program.cs b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/Program.cs
new file mode 100644
index 000000000..19ce71c1e
--- /dev/null
+++ b/v2/rscg_examples/Maestria.TypeProviders/src/DemoExcel/Program.cs
@@ -0,0 +1,10 @@
+using DemoExcel;
+
+Console.WriteLine("Hello, World!");
+var persons = MyExcelPersonFactory.Load("MyExcel.xlsx").ToArray();
+
+foreach (var person in persons)
+{
+ Console.WriteLine(person.ID + person.FullName());
+
+}
\ No newline at end of file