Roslyn syntax tree visualizer in Rider

dc.contributorEvgeniy, Stepanov
dc.contributor.authorManninen, Igor
dc.date.accessioned2026-07-13T12:54:53Z
dc.date.issued2026-04
dc.description.abstractThis thesis presents the design and implementation of a Roslyn Syntax Tree Vi-sualizer for JetBrains Rider — a tool window that displays an interactive abstract syntax tree of C# source files inside the IDE, targeting developers who write Roslyn analysers and source generators. A competitive analysis of five existing tools, a developer survey, and a hands-on development session identified feature gaps and workflow pain points. The findings were formalised into prioritised user stories and system requirements that guided the implementation and design of the tool. The visualizer is built on Rider’s architecture and uses a custom incremental tree update algorithm to overcome the absence of built-in tree diffs in the Roslyn API. Performance benchmarks show that the Rider visualizer is on average 74% faster than Visual Studio’s Syntax Visualizer. Correctness is verified by integration tests validated against gold files. The tool has been merged and released as a production feature in Rider 2025.1.
dc.identifier.urihttps://hdl.handle.net/11728/13576
dc.language.isoen
dc.publisherBSc in Applied Computer Science, School of Economics, Business and Computer Science, Neapolis University Pafos
dc.rightsΑπαγορεύεται η δημοσίευση ή αναπαραγωγή, ηλεκτρονική ή άλλη χωρίς τη γραπτή συγκατάθεση του δημιουργού και κάτοχου των πνευματικών δικαιωμάτωνel_GR
dc.subjectRoslyn
dc.subjectabstract syntax tree
dc.subjectJetBrains Rider
dc.subjectsyntax visualizer
dc.subjectsource generators
dc.subjectstatic analysis
dc.subjectIDE tooling
dc.titleRoslyn syntax tree visualizer in Rider
dc.typeThesis

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Igor Manninen thesis.pdf
Size:
1.74 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description: