Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 26 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# RSCG - 246 Examples of Roslyn Source Code Generators / 16 created by Microsoft /
# RSCG - 247 Examples of Roslyn Source Code Generators / 16 created by Microsoft /

The RSCG_Examples repository is a comprehensive documentation system that automatically processes and showcases 246 Roslyn Source Code Generator (RSCG) examples. The system transforms individual RSCG projects into structured documentation with code examples and cross-referenced content with a searchable website and code example exports.
The RSCG_Examples repository is a comprehensive documentation system that automatically processes and showcases 247 Roslyn Source Code Generator (RSCG) examples. The system transforms individual RSCG projects into structured documentation with code examples and cross-referenced content with a searchable website and code example exports.

This system serves as both a learning resource for .NET developers interested in source generators and an automated pipeline for maintaining up-to-date documentation about the RSCG ecosystem

## Latest Update : 2025-12-13 => 13 December 2025
## Latest Update : 2025-12-14 => 14 December 2025

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

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

## Content

Those are the 246 Roslyn Source Code Generators that I have tested you can see and download source code example.
Those are the 247 Roslyn Source Code Generators that I have tested you can see and download source code example.
( including 16 from Microsoft )
### 247. [BlazorOcticons](https://ignatandrei.github.io/RSCG_Examples/v2/docs/BlazorOcticons) , in the [Blazor](https://ignatandrei.github.io/RSCG_Examples/v2/docs/rscg-examples#blazor) category

Generated on : 2025-12-14 => 14 December 2025

<details>
<summary>Expand</summary>



Author: Evgeniy K.

Package Description

Nuget: [https://www.nuget.org/packages/BlazorOcticons/](https://www.nuget.org/packages/BlazorOcticons/)


Link: [https://ignatandrei.github.io/RSCG_Examples/v2/docs/BlazorOcticons](https://ignatandrei.github.io/RSCG_Examples/v2/docs/BlazorOcticons)

Source: [https://github.com/BlazorOcticons/BlazorOcticons](https://github.com/BlazorOcticons/BlazorOcticons)

</details>

### 246. [Imposter](https://ignatandrei.github.io/RSCG_Examples/v2/docs/Imposter) , in the [Tests](https://ignatandrei.github.io/RSCG_Examples/v2/docs/rscg-examples#tests) category

Generated on : 2025-12-13 => 13 December 2025
Expand Down
2 changes: 1 addition & 1 deletion later.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Just later

## Latest Update : 2025-12-13 => 13 December 2025
## Latest Update : 2025-12-14 => 14 December 2025



Expand Down
36 changes: 36 additions & 0 deletions v2/.tours/BlazorOcticons.tour
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

{
"$schema": "https://aka.ms/codetour-schema",
"title": "BlazorOcticons",
"steps":
[
{
"file": "rscg_examples/BlazorOcticons/src/BlazorDemo/BlazorDemo.csproj",
"description": "First, we add Nuget [BlazorOcticons](https://www.nuget.org/packages/BlazorOcticons/) in csproj ",
"pattern": "BlazorOcticons"
}

,{
"file": "rscg_examples/BlazorOcticons/src/BlazorDemo/Octicons/Andrei16.razor",
"description": "File Andrei16.razor ",
"pattern": "this is the code"
}

,{
"file": "rscg_examples/BlazorOcticons/src/BlazorDemo/andrei-16.svg",
"description": "File andrei-16.svg ",
"pattern": "this is the code"
}

,{
"file": "rscg_examples/BlazorOcticons/src/BlazorDemo/Program.cs",
"description": "File Program.cs \r\n>> dotnet run --project rscg_examples/BlazorOcticons/src/BlazorDemo/BlazorDemo.csproj ",
"pattern": "this is the code"
}
Comment on lines +13 to +29
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Verify CodeTour file paths and patterns (especially andrei-16.svg)

Step definitions look good overall, but two small things to check:

  • Step 3 points at rscg_examples/BlazorOcticons/src/BlazorDemo/andrei-16.svg. If the icon actually lives under an Octicons folder (as other files suggest), this path may be stale and the step won’t open the file.
  • Several steps use "pattern": "this is the code", which probably doesn’t exist in those files. You may want a more specific pattern (or none) so CodeTour scrolls to a meaningful location.

Minor, but worth correcting so the tour works smoothly.

🤖 Prompt for AI Agents
In v2/.tours/BlazorOcticons.tour around lines 13 to 29, the tour steps reference
a possibly incorrect path for andrei-16.svg and use a placeholder pattern "this
is the code" that likely doesn't exist; update the andrei-16.svg file path to
its actual location (e.g., include the Octicons subfolder consistent with other
entries) and replace the generic "this is the code" patterns with meaningful,
file-specific patterns (or remove the pattern property) so CodeTour can open and
scroll to the intended locations.



],

"ref": "main"

}
2 changes: 1 addition & 1 deletion v2/Generator/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ await File.WriteAllTextAsync(Path.Combine(examples,"description.json"),

long nr = await m.GenerateMSFT();
Console.WriteLine("RSCG used by MSFT :" + nr);
var lastGenerator = "RSCG_MCP2File";
var lastGenerator = "Imposter";

await m.WrotePost(lastGenerator);
await m.WroteDocusaurusAll(lastGenerator);
Expand Down
1 change: 1 addition & 0 deletions v2/Generator/all.csv
Original file line number Diff line number Diff line change
Expand Up @@ -245,3 +245,4 @@ Nr,Key,Source,Category
244,BoolParameterGenerator, https://github.com/9swampy/BoolEnumGenerator,Bool
245,Monify, https://github.com/MooVC/monify,PrimitiveObsession
246,Imposter, https://github.com/themidnightgospel/Imposter,Tests
247,BlazorOcticons, https://github.com/BlazorOcticons/BlazorOcticons,Blazor
6 changes: 6 additions & 0 deletions v2/RSCGExamplesData/GeneratorDataRec.json
Original file line number Diff line number Diff line change
Expand Up @@ -1492,4 +1492,10 @@
"dtStart": "2025-12-13T00:00:00",
"show": true
},
{
"ID": "BlazorOcticons",
"Category": 21,
"dtStart": "2025-12-14T00:00:00",
"show": true
}
]
60 changes: 60 additions & 0 deletions v2/book/examples/BlazorOcticons.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@

<h1>RSCG nr 247 : BlazorOcticons</h1>

<h2>Info</h2>
Nuget : <a href="https://www.nuget.org/packages/BlazorOcticons/" target="_blank">https://www.nuget.org/packages/BlazorOcticons/</a>

<p>You can find more details at : <a href="https://github.com/BlazorOcticons/BlazorOcticons" target="_blank"> https://github.com/BlazorOcticons/BlazorOcticons</a></p>

<p>Author :Evgeniy K.</p>

<p>Source: <a href="https://github.com/BlazorOcticons/BlazorOcticons" target="_blank">https://github.com/BlazorOcticons/BlazorOcticons</a> </p>

<h2>About</h2>

Generates Blazor components for GitHub Octicons SVG icons or from svg.Easily integrate GitHub Octicons into your Blazor applications.

<h2>
How to use
</h2>
<h3>
Add reference to the <a href="https://www.nuget.org/packages/BlazorOcticons/" target="_blank">BlazorOcticons</a> in the csproj
</h3>
<img src="images/BlazorOcticons/BlazorDemo.csproj.png" width="580" height="580" />

<h3>This was for me the <b>starting</b> code</h3>

<br />
I have <b>coded</b> the file Program.cs
<br />
<img src="images/BlazorOcticons/csFiles/Program.cs.png" width="580" height="580" />
<hr />

<br />
I have <b>coded</b> the file andrei-16.svg
<br />
<img src="images/BlazorOcticons/csFiles/andrei-16.svg.png" width="580" height="580" />
<hr />

<br />
I have <b>coded</b> the file Andrei16.razor
<br />
<img src="images/BlazorOcticons/csFiles/Andrei16.razor.png" width="580" height="580" />
<hr />
<h3>And here are the <i>generated</i> files</h3>

<p>
You can download the code and this page as pdf from
<a target="_blank" href='https://ignatandrei.github.io/RSCG_Examples/v2/docs/BlazorOcticons'>
https://ignatandrei.github.io/RSCG_Examples/v2/docs/BlazorOcticons
</a>
</p>


<p>
You can see the whole list at
<a target="_blank" href='https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG'>
https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG
</a>
</p>

6 changes: 5 additions & 1 deletion v2/book/list.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
</head>
<body>
<h1>
This is the list of 246 RSCG with examples =>
This is the list of 247 RSCG with examples =>
</h1>

<table >
Expand Down Expand Up @@ -1010,6 +1010,10 @@ <h1>
<td>246</td>
<td><a href="examples/Imposter.html">Imposter</a></td>
</tr>
<tr>
<td>247</td>
<td><a href="examples/BlazorOcticons.html">BlazorOcticons</a></td>
</tr>
</table>


Expand Down
1 change: 1 addition & 0 deletions v2/book/pandocHTML.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,7 @@ input-files:
- examples/BoolParameterGenerator.html
- examples/Monify.html
- examples/Imposter.html
- examples/BlazorOcticons.html

# or you may use input-file: with a single value
# defaults:
Expand Down
22 changes: 22 additions & 0 deletions v2/rscg_examples/BlazorOcticons/description.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"generator":{
"name":"BlazorOcticons",
"nuget":[
"https://www.nuget.org/packages/BlazorOcticons/"
],
"link":"https://github.com/BlazorOcticons/BlazorOcticons",
"author":"Evgeniy K.",
"source":"https://github.com/BlazorOcticons/BlazorOcticons"
},
"data":{
"goodFor":["Generates Blazor components for GitHub Octicons SVG icons or from svg.","Easily integrate GitHub Octicons into your Blazor applications."],
"csprojDemo":"BlazorDemo.csproj",
"csFiles":["Program.cs","andrei-16.svg","Andrei16.razor"],
"excludeDirectoryGenerated":["Microsoft.CodeAnalysis.Razor.Compiler"],
"includeAdditionalFiles":[""]
},
"links":{
"blog":"",
"video":""
}
}
1 change: 1 addition & 0 deletions v2/rscg_examples/BlazorOcticons/nuget.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Package Description
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Replace placeholder NuGet description with real text

nuget.txt currently contains only “Package Description”. If this surfaces in generated docs or the site, it will look unfinished. Consider replacing it with a short, meaningful description of BlazorOcticons (or confirm this file is unused/overwritten in your tooling).

🤖 Prompt for AI Agents
In v2/rscg_examples/BlazorOcticons/nuget.txt around lines 1 to 1, the file
contains only the placeholder "Package Description"; replace it with a concise,
meaningful NuGet package description for BlazorOcticons (e.g., one sentence
summarizing what the package provides, its main features and intended use), or
if the file is unused in your build/tooling, remove it or mark it as
intentionally blank with a comment explaining why.

54 changes: 54 additions & 0 deletions v2/rscg_examples/BlazorOcticons/readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
[![Backup Status](https://cloudback.it/badge/BlazorOcticons/BlazorOcticons)](https://cloudback.it)
[![.NET](https://github.com/BlazorOcticons/BlazorOcticons/actions/workflows/dotnet.yml/badge.svg)](https://github.com/BlazorOcticons/BlazorOcticons/actions/workflows/dotnet.yml)
[![GitHub](https://img.shields.io/github/license/BlazorOcticons/BlazorOcticons)](https://github.com/BlazorOcticons/BlazorOcticons/blob/main/LICENSE)
[![Nuget (with prereleases)](https://img.shields.io/nuget/vpre/BlazorOcticons?logo=nuget)](https://www.nuget.org/packages/BlazorOcticons)

![image](https://github.com/BlazorOcticons/BlazorOcticons/assets/6689884/30a985b1-0938-4ba7-b0c1-9ced889636d0)

# BlazorOcticons

**BlazorOcticons** is an easy-to-use GitHub Octicons built as customizable `.razor` components.

| NuGet Package | Description |
|-------------------------|-------------|
| BlazorOcticons | Main package which contains only `.razor` components |
| BlazorOcticonsGenerator | Helper package which contains Source Generators for Octicons |

## Installation

1. Install the BlazorOcticons NuGet package:

```
dotnet add package BlazorOcticons
```

2. In the `_Imports.razor` file add `@using BlazorOcticons.Octicons`:

``` razor

@using System.Net.Http
@using System.Net.Http.Json
...
@using Microsoft.AspNetCore.Components
@using Microsoft.JSInterop
@using BlazorOcticons.Octicons

```

3. That's it! Now you can use the components in your project.

## Usage

Inside your code, use any of GitHub Octicons as `.razor` components:

``` razor
<div class="p-3">
...
<MarkGithub16 Color="#702AF7" Size="48"/>
...
</div>
```

## Contribute

All contributions are welcome! Feel free to raise any issues (bugs or feature requests), submit pull requests, etc.
3 changes: 3 additions & 0 deletions v2/rscg_examples/BlazorOcticons/src/BlazorDemo.slnx
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<Solution>
<Project Path="BlazorDemo/BlazorDemo.csproj" />
</Solution>
6 changes: 6 additions & 0 deletions v2/rscg_examples/BlazorOcticons/src/BlazorDemo/App.razor
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<Router AppAssembly="@typeof(App).Assembly" NotFoundPage="typeof(Pages.NotFound)">
<Found Context="routeData">
<RouteView RouteData="@routeData" DefaultLayout="@typeof(MainLayout)"/>
<FocusOnNavigate RouteData="@routeData" Selector="h1" />
</Found>
</Router>
39 changes: 39 additions & 0 deletions v2/rscg_examples/BlazorOcticons/src/BlazorDemo/BlazorDemo.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<Project Sdk="Microsoft.NET.Sdk.BlazorWebAssembly">

<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<OverrideHtmlAssetPlaceholders>true</OverrideHtmlAssetPlaceholders>
</PropertyGroup>

<ItemGroup>
<AdditionalFiles Include="andrei-16.svg" />
</ItemGroup>



<ItemGroup>
<PackageReference Include="BlazorOcticons" Version="1.3.0" />
<PackageReference Include="BlazorOcticonsGenerator" Version="1.3.0">
</PackageReference>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="10.0.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="10.0.1" PrivateAssets="all" />
</ItemGroup>
<!-- Use only local test icons -->
<ItemGroup>
<AdditionalFiles Remove="$(BlazorOcticonsIconsPath)**\*.svg" />
</ItemGroup>
<ItemGroup>
<Folder Include="Octicons\" />
</ItemGroup>


<PropertyGroup>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
<CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath>
</PropertyGroup>
</Project>



Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
@inherits LayoutComponentBase
<div class="page">
<div class="sidebar">
<NavMenu />
</div>

<main>
<div class="top-row px-4">
<a href="https://learn.microsoft.com/aspnet/core/" target="_blank">About</a>
</div>

<article class="content px-4">
@Body
</article>
</main>
</div>
Loading