.NET-compatible scripting languages for users to write their own scripts to query/manipulate objects/properties in the app

This page summarizes the projects mentioned and recommended in the original post on /r/csharp

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • NLua

    Bridge between Lua and the .NET.

  • http://nlua.org It supports sandboxing so users can't do funny stuffs.

  • scriban

    A fast, powerful, safe and lightweight scripting language and engine for .NET

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Jint

    Javascript Interpreter for .NET

  • We used https://github.com/sebastienros/jint for scripting, it's ES5 JS implementation.

  • dotnet6-jint-rules-engine

    A JavaScript rules engine running in .NET 6 using the Jint library.

  • Sample repo: https://github.com/CharlieDigital/dotnet6-jint-rules-engine

  • grammars-v4

    Grammars written for ANTLR v4; expectation that the grammars are free of actions.

  • You can find C# grammar files already defined online: https://github.com/antlr/grammars-v4/tree/master/csharp

  • PythonNet

    Python for .NET is a package that gives Python programmers nearly seamless integration with the .NET Common Language Runtime (CLR) and provides a powerful application scripting tool for .NET developers.

  • There is also PythonNET which is a wrapper around the actual C based Python implementation (python.org). I don't know about a sandboxing capability though.

  • BakedEnv

    A scripting language made in C#, for C#

  • I've been working on one for a while, conned BakedEnv. It's not finished, but I thought I may as well share.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • bad-bits

    A game engine written for making retro styled desktop games using javascript.

  • boo

    The Boo Programming Language.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts