Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

CJSnow/WebSharp

Open more actions menu
 
 

Repository files navigation

WebSharp

This project is intended to support running .NET code as an Electron Plugin, running code using the Mono runtime, side-by-side the V8 engine and to provide both C# API bindings to Electron's plugin API as well as the Web browser API.

This will be made up of a few components:

  • The plugin that launches the Mono process and runs code on behalf of the user.
  • The Xamarin.PepperSharp.dll API bindings that will provide access to the APIs surfaced to Chromium plugins to C# code.
  • Xamarin.W3C.dll API bindings that will provide access to the browser APIs, built on top of Xamarin.PepperSharp.dll
  • System.Windows.Browser this API surfaces the DOM tree to C# as a strongly typed set of objects. An MIT licensed implementation of this is part of Moonlight that could be refactored.

For the Xamarin.W3C APIs, we intend to use the TypeScript type definitions to generate a strongly typed .NET API.

Current Work

This is a work in progress, and we are only getting started. This means that the activation workflow for .NET code is not finalized, nor is the API that is exposed to .NET code running on Electron.

With that being said, check the GettingStarted documents for the basics.

Future Work

We hope that the Xamarin.W3C API would be used in the future when we compile .NET code to WebAssembly.

About

Support for running C# on the web browser.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 55.3%
  • Python 26.8%
  • C++ 13.2%
  • JavaScript 3.6%
  • Batchfile 0.5%
  • Makefile 0.3%
  • Other 0.3%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.