YantraJS

YantraJS

Creating Software

Select a membership level

Silver Sponsor

$10
per month
Your Name displayed under Silver Sponsors in our GitHub Readme and Website for 30 days.
  • General Support

Gold Sponsor

$20
per month
Your Name and Logo displayed under Gold Sponsors in our GitHub Readme and Website for 30 days.
  • General Support

Platinum Sponsor

$50
per month
Your Name and Logo displayed and link to your website under Platinum Sponsors in our GitHub Readme and Website for 30 days.
  • General Support

0

patrons

$0

per month

About YantraJS

GitHub YantraJS Repository

Yantra (Machine in Sanskrit) is a Managed JavaScript Engine for .NET Standard written completely in C#.

Features

  1. Compiles JavaScript to .Net Assembly
  2. Strict Mode Only JavaScript*
  3. Arrow functions
  4. Classes
  5. Enhanced object literals
  6. Template strings and tagged templates
  7. Destructuring
  8. <code>let</code> <code>const</code>
  9. Map, Set, WeakMap, WeakSet
  10. Symbols
  11. Subclassable built-ins
  12. Binary and Octal literals
  13. Module support
  14. Null coalesce
  15. Optional property chain <code>identifier?.[]</code>, <code>identifier?.(</code>, <code>identifier?.identifier</code>
  16. Rest, Default and Spread Parameters
  17. Generators, iterators, for..of
  18. Async/Await
  19. Optional parameters
  20. Many ES5 + ES6 features
  21. CommonJS Module Support
  22. Easily marshal CLR Object to JavaScript and other way around
  23. CSX Module support
<code>*</code> Most JavaScript today is available in strict mode, we do not feel any need to support non strict mode as modules are strict by default.

YantraJS.ExpressionCompiler

Expression compiler is similar to .NET's Linq Expression LambdaCompiler and supports compiling expression to method builder. It is not drop in replacement but the API is quite familiar to Linq Expressions.

YantraJS Core


YantraJS.Core is a JavaScript engine, which contains Scanner, Parser and Compiler which compiles JavaScript AST to ExpressionCompiler Expressions. That in turn are converted to IL and it can be saved.

ECMAScript Conformance
Currently we are seeing more than 70% conformance to ECMAScript, reaching 100% is little out of scope as it is very huge and Yantra is only one year old. We are focusing on supporting most used JavaScript patterns instead of targeting 100% compliance due to limited development bandwidth.

How it works

Get started in 2 minutes

Choose a membership
Sign up
Add a payment method
Get benefits