Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. .NET
  3. dotnet-repl

dotnet-repl

MITC#

A polyglot command-line REPL for .NET supporting C#, F#, PowerShell, and more, built on .NET Interactive.

GitHubGitHub
844 stars42 forks0 contributors

What is dotnet-repl?

dotnet-repl is a polyglot REPL (Read-Eval-Print Loop) tool for the .NET ecosystem, built on .NET Interactive. It allows developers to write and execute code in multiple .NET languages—such as C#, F#, and PowerShell—directly from the command line, supporting interactive coding, script running, and rapid prototyping.

Target Audience

.NET developers, data scientists, and educators who need a lightweight, interactive environment for testing code snippets, learning languages, or running scripts without launching a full IDE.

Value Proposition

It offers a unified, polyglot REPL experience on the command line, leveraging .NET Interactive's capabilities for multi-language support, NuGet integration, and magic commands, making it more versatile than single-language REPLs.

Overview

A polyglot REPL built on .NET Interactive

Use Cases

Best For

  • Quickly testing C# or F# code snippets in a scripting dialect
  • Interactive learning and experimentation with .NET languages
  • Running and testing Jupyter notebooks (`.ipynb`) or .NET Interactive scripts (`.dib`) from the terminal
  • Prototyping with NuGet packages in an isolated REPL session
  • Automating script execution with parameterized inputs for CI/CD pipelines
  • Switching between multiple .NET languages in a single coding session

Not Ideal For

  • Teams requiring integrated debugging and step-through execution in their REPL environment
  • Projects built on .NET Framework 4.x or other legacy .NET versions not supported by .NET Interactive
  • Developers who prefer a GUI-based interactive environment with rich visual feedback and tools
  • Production environments needing a stable, officially supported REPL with guaranteed SLAs and extensive documentation

Pros & Cons

Pros

Polyglot Language Support

Allows seamless switching between C#, F#, PowerShell, and other languages in a single session, leveraging .NET Interactive's capabilities for a unified coding experience.

Direct NuGet Integration

Enables on-the-fly installation and use of NuGet packages with #r nuget commands, facilitating rapid prototyping and library testing without external setup.

Flexible File Execution

Supports running and initializing sessions from various file types like .ipynb, .csx, and .fsx, making it versatile for scripting, testing, and CI/CD integration.

Magic Commands Enhancement

Provides advanced functionalities through magic commands like #!import and #!help, extending beyond basic REPL features to include database connections and script imports.

Cons

Experimental and Unofficial

As a personal project noted in the README, it may have stability issues, slower updates, and less community support compared to official .NET tools like Visual Studio Interactive.

Limited Source Code Support

For C# and F# source files, the README admits that some language constructs such as namespaces are not fully supported, restricting execution of complex codebases.

Terminal-Only Interface

Lacks graphical elements like syntax highlighting or visual debugging, which might hinder users accustomed to IDE-based REPLs with richer feedback and tools.

Frequently Asked Questions

Quick Stats

Stars844
Forks42
Contributors0
Open Issues34
Last commit24 days ago
CreatedSince 2021

Tags

#developer-tools#csharp#command-line-tool#repl#dotnet#interactive-coding#scripting#fsharp#polyglot

Included in

.NET21.2k
Auto-fetched 17 hours ago

Related Projects

RoslynRoslyn

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

Stars20,565
Forks4,293
Last commit23 hours ago
Lib.HarmonyLib.Harmony

A library for patching, replacing and decorating .NET and Mono methods during runtime

Stars6,579
Forks566
Last commit1 month ago
PP

The P programming language.

Stars3,647
Forks223
Last commit2 days ago
FableFable

F# to JavaScript, TypeScript, Python, Rust, Erlang and Dart Compiler

Stars3,134
Forks329
Last commit23 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub