You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,8 @@ These workshops guide you through analyzing syntax trees in various programming
5
5
offering hands-on experience to automate documentation in a way that stays synchronized with your codebase.
6
6
You’ll start with DendroDocs as the default tool but can adapt it to fit the needs of any project.
7
7
8
+
See [Installation & Setup](INSTALLATION.md) to download the workshop files and prepare your environment.
9
+
8
10
## Who should follow this workshop?
9
11
10
12
This workshop is for developers, technical writers, DevOps engineers, and anyone curious about making documentation easy, reliable, and always up-to-date.
This workshop requires a few tools before you can start exploring the chapters.
4
+
5
+
Before continuing, follow the [Installation & Setup](../../INSTALLATION.md) guide at the repository root to download the workshop files.
6
+
Then install the prerequisites below so you can run the exercises and open the provided solutions.
7
+
8
+
## Prerequisites
9
+
10
+
* Install the [**.NET 8 SDK**](https://dotnet.microsoft.com/download/dotnet/8.0), or newer.
11
+
* An IDE, e.g.:
12
+
* Install [**Visual Studio**](https://visualstudio.microsoft.com/vs/) with the **.NET desktop development** workload.
13
+
If you install this IDE, also check the additional components mentioned in the next paragraph.
14
+
Visual Studio offers the best debugging and syntax tree visualization experience.
15
+
* Install [**Visual Studio Code**](https://code.visualstudio.com/) with the [C# extension](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp).
16
+
17
+
Other IDEs may work, but instructions are not provided.
18
+
19
+
### Syntax Visualizer and DGML editor
20
+
21
+
When adding components to Visual Studio, select the **Individual components** tab,
22
+
and make sure the **.NET Compiler Platform SDK** (which includes the Syntax Visualizer) is added.
23
+
You can find it under _Compilers, build tools, and runtimes_ section.
24
+
Also add the **DGML editor** from the _Code tools_ section.
25
+
26
+
The Syntax Visualizer and DGML editor are only used in [Chapter 1](01-syntax-trees.md) to visualize the syntax tree and semantic model of a C# program.
27
+
The remaining chapters work in both Visual Studio and Visual Studio Code.
28
+
29
+
## Opening the solutions
30
+
31
+
Each chapter has a ready-made solution in the `solutions` folder. Open the solution for the chapter you are working on:
32
+
33
+
1. Navigate to `solutions/<chapter-number>`.
34
+
2. Open the `.sln` or project folder in Visual Studio or VS Code.
35
+
3. Restore packages if prompted, then follow the steps in the corresponding chapter to explore the code.
36
+
37
+
## Tips
38
+
39
+
* In VS Code, installing the **C# Dev Kit** and **C#** extensions from Microsoft provides a smoother experience.
40
+
* Use Visual Studio's built-in Syntax Visualizer and DGML editors for Chapter 1.
41
+
42
+
Once your environment is set up, you're ready to dive into the chapters and start analyzing .NET projects with Roslyn.
Copy file name to clipboardExpand all lines: part1/dotnet/README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,8 @@
2
2
3
3
Welcome to the first part of the DendroDocs workshop for .NET, where you’ll get hands-on with Roslyn, officially known as the *[.NET Compiler Platform SDK](https://learn.microsoft.com/dotnet/csharp/roslyn-sdk/?wt.mc_id=AZ-MVP-5004268)*.
4
4
5
+
Before you begin, see the [Installation & Setup](INSTALLATION.md) guide to configure your environment.
6
+
5
7
Roslyn can help improve code quality, generate reports, and most importantly, automate documentation,
6
8
making it invaluable for developers looking to deepen their code analysis capabilities.
This workshop requires a few tools before you can start exploring the chapters.
4
+
5
+
Before continuing, follow the [Installation & Setup](../../INSTALLATION.md) guide at the repository root to download the workshop files.
6
+
Then install the prerequisites below so you can run the exercises and open the provided solutions.
7
+
8
+
## Prerequisites
9
+
10
+
* Install the [**.NET 8 SDK**](https://dotnet.microsoft.com/download/dotnet/8.0), or newer.
11
+
* An IDE, e.g.:
12
+
* Install [**Visual Studio**](https://visualstudio.microsoft.com/vs/) with the **.NET desktop development** workload.
13
+
* Install [**Visual Studio Code**](https://code.visualstudio.com/) with the [C# extension](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp).
14
+
If you install this IDE, also check the additional component mentioned in the next paragraph.
15
+
16
+
Other IDEs may work, but instructions are not provided.
17
+
18
+
### PlantUML
19
+
20
+
In Visual Studio Code, you can install the **PlantUML** extension to visualize UML diagrams from PlantUML code.
Copy file name to clipboardExpand all lines: part2/dotnet/README.md
+8-5Lines changed: 8 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,8 @@
3
3
Welcome to the second part of the DendroDocs workshop for .NET.
4
4
Here you’ll use the analysis output from Part 1 to create living documentation.
5
5
6
+
Before you begin, see the [Installation & Setup](INSTALLATION.md) guide to configure your environment.
7
+
6
8
Ideally, you would generate documentation for a project you already know well.
7
9
Because that’s not an option in this workshop, we’ll use the open source [Pitstop](https://github.com/EdwinVW/pitstop) project as a shared reference point.
8
10
This sample provides enough code to demonstrate how DendroDocs works without requiring in-depth domain knowledge.
@@ -16,15 +18,15 @@ We’ll begin by producing the intermediate JSON file that drives all other docu
16
18
17
19
Clone the sample project and run the analyzer to produce a JSON file for the rest of this part.
18
20
19
-
20
21
2.[Working with _TypeDescriptions_](02-work-with-types.md)
21
22
22
23
Read the intermediate JSON file, get familiar with the type descriptions, and start querying relationships between classes, methods, invocations, and more.
Use your analyzed type information to create clear and maintainable Markdown documentation.
27
-
In this chapter, you will build a generator that starts with static content and then adds dynamic sections, such as commands, events, and their properties, all derived directly from your source code.
28
+
In this chapter, you will build a generator that starts with static content and then adds dynamic sections, such as commands, events, and their properties,
29
+
all derived directly from your source code.
28
30
The result is documentation that automatically stays in sync with your application.
29
31
30
32
4.[Generating Class Diagrams](04-generating-class-diagrams.md)
@@ -38,11 +40,12 @@ We’ll begin by producing the intermediate JSON file that drives all other docu
38
40
You’ll use prebuilt utilities to trace invocations and render PlantUML diagrams that help explain how commands are processed across your system.
39
41
40
42
Each chapter in Part 2 builds on the last, showing you how to turn static analysis results into clear, interactive documentation for your .NET projects.
41
-
You now know how to process code metadata, generate readable Markdown, and visualize your system with class and sequence diagrams, all directly from your source code.
43
+
You now know how to process code metadata, generate readable Markdown, and visualize your system with class and sequence diagrams,
44
+
all directly from your source code.
42
45
43
-
By the end of this workshop, you’ve built a documentation pipeline that stays up to date with every code change, making your architecture easier to understand and share.
46
+
By the end of this workshop, you’ve built a documentation pipeline that stays up to date with every code change,
47
+
making your architecture easier to understand and share.
44
48
45
49
## Complete solutions
46
50
47
51
You can find the complete solutions for each chapter in the [Solutions](solutions) folder.
0 commit comments