Skip to content
This repository

CIL to Javascript Compiler

branch: master

Merge pull request #439 from iskiselev/IDictionary

Dictionary implements IDictionary and IDictionary<TKey, TValue>
latest commit 91aeb09d74
K. Gadd kg authored April 24, 2014
Octocat-spinner-32 Compiler Fix ResourceConverter choking in cases where it ends up converting th… April 23, 2014
Octocat-spinner-32 Corlib Nuke the Mannux demo since it requires a lot of babysitting February 26, 2013
Octocat-spinner-32 Examples Use new Verbatim.Expression overload in Pathtracer. Fixes issue #264. September 21, 2013
Octocat-spinner-32 JSIL Fixed inner class name pattern for generic parameter (#352) April 21, 2014
Octocat-spinner-32 Libraries Merge pull request #439 from iskiselev/IDictionary April 24, 2014
Octocat-spinner-32 Meta Added JSStubOnly attribute for simplification creation of class sutbs. February 25, 2014
Octocat-spinner-32 Proxies Implement string.Join(string, IEnumerable<T>) September 19, 2013
Octocat-spinner-32 SimpleProject fixed pointed issues (no asm ID | non-x86 configs | JSIL copy) May 07, 2012
Octocat-spinner-32 Skeletons Fix the skeletons config August 20, 2012
Octocat-spinner-32 SmokeTests Clean up compiler warnings. September 11, 2013
Octocat-spinner-32 Tests Test added, problems fixed for Dictionary interface implementation. April 24, 2014
Octocat-spinner-32 Try Add a test case for issue #118 April 10, 2013
Octocat-spinner-32 Upstream Update spidermonkey builds November 16, 2013
Octocat-spinner-32 Update website October 10, 2013
Octocat-spinner-32 .gitignore Remove that stupid hack that causes GetTypeName to be wrong for strings July 22, 2013
Octocat-spinner-32 .gitmodules Add sauce labs test credentials December 23, 2012
Octocat-spinner-32 JSIL.nunit Pull the method signature cache out of a static field so that it does… April 06, 2012
Octocat-spinner-32 JSIL.sln Add a test case for issue #118 April 10, 2013
Octocat-spinner-32 JSIL_NoXNA.sln Solved some of the Int64 issues in issue 162 August 21, 2013
Octocat-spinner-32 Update March 10, 2014
Octocat-spinner-32 build_corlib.bat Make RunTransformsOnAllFunctions actually obey the threading setting.… March 07, 2013
Octocat-spinner-32 build_demos.bat Add comments to the top of build_demos.bat (issue #257) September 03, 2013
Octocat-spinner-32 build_skeletons.bat Handle being run from different working directories. August 20, 2012
Octocat-spinner-32 jsil.ico Updated website and added new logo June 07, 2011
Octocat-spinner-32 run_server.bat Change the platform argument for the rpg starter kit so it builds cor… April 24, 2012
Octocat-spinner-32 test_runner.html Force-enable the 'run' button in test_runner because firefox saves fo… April 18, 2013


JSIL is a compiler that transforms .NET applications and libraries from their native executable format - CIL bytecode - into standards-compliant, cross-browser JavaScript. You can take this JavaScript and run it in a web browser or any other modern JavaScript runtime. Unlike other cross-compiler tools targeting JavaScript, JSIL produces readable, easy-to-debug JavaScript that resembles the code a developer might write by hand, while still maintaining the behavior and structure of the original .NET code.

For live demos and code samples, visit the website.

For help on getting started using JSILc, see the wiki.


Copyright 2011 K. Gadd
License: MIT/X11

Replay/Record support copyright 2012 Mozilla Corporation License: MIT/X11


JSIL depends upon or is based on the following open source libraries:

  • Mono.Cecil: MIT/X11 (thanks to Jb Evain)
  • ICSharpCode.Decompiler: MIT/X11 (developed as part of ILSpy)
  • Mono.Options: MIT/X11 (Jonathan Pryor & Federico Di Gregorio)
  • printStackTrace: Public Domain (Eric Wendelin and others)
  • XAPParse: Microsoft Public License/Ms-PL (Andy Patrick)
  • webgl-2d: MIT (Corban Brook, Bobby Richter, Charles J. Cliffe, and others)
  • S3TC DXT1 / DXT5 Texture Decompression Routines (Benjamin Dobell)

The Upstream folder also contains:

  • Win32 build of the Spidermonkey command-line JavaScript shell. It is built from sources provided by the Mozilla project ( This build is used for running JavaScript automated tests.
  • A specific version of the NUnit.Framework assembly, used by the automated tests. This ensures that they compile correctly regardless of which version of NUnit you have installed.
  • Win32 build of PNGQuant for optimizing PNG files. (Jef Poskanzer, Greg Roelofs)

Logo by John Flynn.

Assorted code and test case contributions by the various contributors on the GitHub project page - already too many to list here.

Something went wrong with that request. Please try again.