An open API service indexing awesome lists of open source software.

https://github.com/elringus/bootsharp

Compile C# solution into single-file ES module with auto-generated JavaScript bindings and type definitions
https://github.com/elringus/bootsharp

bun codegen csharp deno interop js node ts typescript wasm

Last synced: 27 days ago
JSON representation

Compile C# solution into single-file ES module with auto-generated JavaScript bindings and type definitions

Awesome Lists containing this project

README

        



Bootsharp





nuget
codefactor
codecov
codeql



# Use C# in web apps with comfort

Bootsharp streamlines the integration of .NET C# apps and libraries into web projects. It's ideal for building applications where the domain (backend) is authored in .NET C#, while the UI (frontend) is a standalone TypeScript or JavaScript project. Think of it as [Embind](https://emscripten.org/docs/porting/connecting_cpp_and_javascript/embind.html) for C++ or [wasm-bindgen](https://github.com/rustwasm/wasm-bindgen) for Rust.

![](https://raw.githubusercontent.com/elringus/bootsharp/main/docs/public/img/banner.png)

Facilitating high-level interoperation between C# and TypeScript, Bootsharp lets you build the UI layer within its natural ecosystem using industry-standard tooling and frameworks, such as [React](https://react.dev) and [Svelte](https://svelte.dev). The project can then be published to the web or bundled as a native desktop or mobile application with [Electron](https://electronjs.org) or [Tauri](https://tauri.app).

## Features

✨ High-level C# <-> TypeScript interop

πŸ“¦ Embeds binaries to single-file ES module

πŸ—ΊοΈ Works in browsers and JS runtimes (Node, Deno, Bun)

⚑ Generates bindings and types over C# interfaces

🏷️ Supports interop over object instances

πŸ› οΈ Allows customizing emitted bindings

πŸ”₯ Supports multi-threading, NativeAOT-LLVM, trimming

## 🎬 Get Started

https://bootsharp.com/guide