back to home

dotnet / roslyn

The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.

20,242 stars
4,229 forks
6,056 issues
C#Visual Basic .NETPowerShell

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing dotnet/roslyn in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind-ai.vercel.app/repo/dotnet/roslyn)
Preview:Analyzed by RepoMind

Repository Summary (README)

Preview
<p align="center"> <img width="450" src="https://user-images.githubusercontent.com/46729679/109719841-17b7dd00-7b5e-11eb-8f5e-87eb2d4d1be9.png" alt="Roslyn logo"> </p> <h1 align="center">The .NET Compiler Platform</h1> <p align="center"><a href="http://aka.ms/discord-csharp-roslyn" rel="nofollow"><img title="Chat on Discord" src="docs/img/discord-mark-white.png" /></a></p>

Roslyn is the open-source implementation of both the C# and Visual Basic compilers with an API surface for building code analysis tools.

C# and Visual Basic Language Feature Suggestions

If you want to suggest a new feature for the C# or Visual Basic languages go here:

Contributing

All work on the C# and Visual Basic compiler happens directly on GitHub. Both core team members and external contributors send pull requests which go through the same review process.

If you are interested in fixing issues and contributing directly to the code base, a great way to get started is to ask some questions on GitHub Discussions! Then check out our contributing guide which covers the following:

Community

The Roslyn community can be found on GitHub Discussions, where you can ask questions, voice ideas, and share your projects.

To chat with other community members, you can join the Roslyn channel on the CSharp Community Discord.

Our Code of Conduct applies to all Roslyn community channels and has adopted the .NET Foundation Code of Conduct.

Documentation

Visit Roslyn Architecture Overview to get started with Roslyn’s API’s.

NuGet Feeds

The latest pre-release builds are available from the following public NuGet feeds:

  • Compiler: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json
  • IDE Services: https://pkgs.dev.azure.com/azure-public/vside/_packaging/vssdk/nuget/v3/index.json
  • .NET SDK: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json

Continuous Integration status

Builds

BranchWindows DebugWindows ReleaseUnix Debug
mainBuild StatusBuild StatusBuild Status

Desktop Unit Tests

BranchDebug x86Debug x64Release x86Release x64
mainBuild StatusBuild StatusBuild StatusBuild Status

CoreClr Unit Tests

BranchWindows DebugWindows ReleaseLinux
mainBuild StatusBuild StatusBuild Status

Integration Tests

BranchDebug x86Debug x64Release x86Release x64
mainBuild StatusBuild StatusBuild StatusBuild Status

Misc Tests

BranchDeterminismAnalyzersBuild CorrectnessSource buildTODO/PrototypeSpanishMacOS
mainBuild StatusBuild StatusBuild StatusBuild StatusBuild StatusBuild StatusBuild Status

.NET Foundation

This project is part of the .NET Foundation along with other projects like the .NET Runtime.