Jint.CommonJS 1.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Jint.CommonJS --version 1.0.0                
NuGet\Install-Package Jint.CommonJS -Version 1.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Jint.CommonJS" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Jint.CommonJS --version 1.0.0                
#r "nuget: Jint.CommonJS, 1.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Jint.CommonJS as a Cake Addin
#addin nuget:?package=Jint.CommonJS&version=1.0.0

// Install Jint.CommonJS as a Cake Tool
#tool nuget:?package=Jint.CommonJS&version=1.0.0                

Jint.CommonJS

What's a GitHub project without build badges? Build status

Jint.CommonJS is an extremely simple CommonJS-compatible module loader for the Jint .NET Javascript Engine. It's written in .NET core 2.0 and should be compatible with all .NET frameworks that Jint targets. It allows you to require JavaScript modules from other modules in the Jint interpreter using the familiar require function we all know and love.

Every loaded module is wrapped in the following closure:

(function(module, exports, __dirname, require))

...and thus module bodies are not globally scoped.

  • module points to the CLR module instance
  • exports points to the module's public API
  • __dirname is the directory that this module resides in
  • require is a function which loads other modules relative to this module's directory

The library is MIT licensed.

A note about Node.JS compatibilty

You are not able to load npm packages with Jint.CommonJS. Although the library loads modules in relatively the same format at NodeJS's Module specification, there are some important distinctions. The library does not support node_modules, or reading package.json files for modules.

Features

  • require another JavaScript module from a JavaScript file with require('./module')
  • require JSON with require('./file.json')
  • require modules from other modules
  • A small but succinct unit test suite.

Using the library

  1. Import the project reference via NuGet, or by cloning and building the project directly
  2. Import the Jint.CommonJS namespace in your code
  3. Use the CommonJS() extension method on Jint.Engine to enable CommonJS functionality

Example

The following example runs a main module from the C# program's current directory.

using Jint;
using Jint.CommonJS;

public static class Program
{
    public static Engine engine = new Engine();

    public static void Main(string[] args)
    {
        // Creates a new Jint instance and runs the myModule.js file in the program's
        // current working directory.
        Jint.Native.JsValue exports = engine.CommonJS().RunMain("./myModule");
    }
}

myModule.js

exports.value = require('./myOtherModule');
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETStandard 2.0

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Jint.CommonJS:

Package Downloads
Jist.Next

The next generation of server-sided economy for TShock Servers

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.14 3,491 4/22/2018
1.0.13 1,023 4/21/2018
1.0.12 1,167 4/21/2018
1.0.11 1,193 4/21/2018
1.0.10 1,217 4/7/2018
1.0.9 1,082 3/24/2018
1.0.8 1,030 3/24/2018
1.0.7 1,055 3/23/2018
1.0.0 1,082 3/23/2018