awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kripken avatar

kripken/emscripten

0
View on GitHub↗
27,429 Stars·3,526 Forks·C++·4 Aufrufe

Emscripten

Emscripten is a WebAssembly toolchain and compiler backend that transforms C and C++ source code into WebAssembly bytecode. It serves as a framework for porting native applications and libraries to web browsers and server runtimes by translating LLVM intermediate representation into optimized WebAssembly modules.

The system specializes in porting native graphical standards, such as OpenGL and SDL2, by mapping native graphics API calls to browser-compatible WebGL commands. This allows complex visual applications and native desktop software to be deployed as portable web formats.

The toolchain includes a compatible C standard library, a virtual file system that emulates POSIX-compliant I/O operations, and a dynamic linker simulation. It also generates JavaScript glue code to manage memory allocation and function calls between the WebAssembly module and the browser environment.

Features

  • C/C++ to WebAssembly Compilers - Transforms C and C++ source code into WebAssembly bytecode for execution in web browsers and server runtimes.
  • Compiler Backends - Implements a compiler backend that translates LLVM intermediate representation into optimized WebAssembly modules.
  • Native-to-Web Porting Frameworks - Serves as a comprehensive framework for porting native graphical APIs and libraries to web-based platforms.
  • Standard Library Implementations - Implements a compatible version of the C and C++ standard libraries targeting the WebAssembly memory model.
  • WebAssembly - Provides the necessary tooling to compile and execute native C/C++ applications as WebAssembly modules.
  • WebAssembly Glue Code Generators - Generates JavaScript wrapper code to manage memory allocation and function calls between WebAssembly and the browser.
  • Bytecode Compilers - Transforms C and C++ source code into optimized WebAssembly bytecode using an LLVM backend.
  • WebAssembly Frameworks - Provides a toolchain for compiling C and C++ source code into WebAssembly for high-performance execution in browsers.
  • Virtual File Systems - Simulates a POSIX-compliant file system in memory to support standard C I/O operations.
  • Cross-Platform Deployment Targets - Converts native desktop software into a portable WebAssembly format that runs across different operating systems via a browser.
  • Graphics API Translators - Translates native graphics API calls into open standard commands for hardware-accelerated rendering in the browser.
  • WebGL & GPU Rendering - Maps native OpenGL graphics API calls into browser-compatible WebGL commands for 3D rendering.
  • Compiler Toolchains - Provides a compiler toolchain that leverages LLVM to target the WebAssembly execution environment.
  • Runtime Symbol Resolution - Provides a simulation of a dynamic linker to resolve external symbols across multiple compiled modules at runtime.
  • Multi-Target Compilers - Integrates with LLVM-based compilers to enable multiple programming languages to target the WebAssembly environment.
  • Compiler Technology - Compiles LLVM-based code into JavaScript for web execution.
  • Desktop and Mobile Development - LLVM-based C/C++ to JavaScript compiler.
  • Language Compilers - LLVM-based compiler for targeting WebAssembly from C and C++.

Star-Verlauf

Star-Verlauf für kripken/emscriptenStar-Verlauf für kripken/emscripten

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Emscripten

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Emscripten.
  • assemblyscript/assemblyscriptAvatar von AssemblyScript

    AssemblyScript/assemblyscript

    17,926Auf GitHub ansehen↗

    AssemblyScript is a compiler and tooling suite used for WebAssembly module development. It converts a subset of TypeScript syntax into binary modules to achieve high execution speeds and cross-platform binary execution. The project focuses on translating typed source code into the compact binary format required by WebAssembly runtimes. This allows for the movement of computationally heavy logic into binary modules for browser performance optimization and execution across different operating systems. The compilation process involves TypeScript-compatible syntax analysis and the generation of

    WebAssemblyassemblyscriptcompilertypescript
    Auf GitHub ansehen↗17,926
  • tinygo-org/tinygoAvatar von tinygo-org

    tinygo-org/tinygo

    17,529Auf GitHub ansehen↗

    TinyGo is a specialized compiler and development toolkit designed to bring the Go programming language to resource-constrained microcontrollers and WebAssembly environments. It provides a bare-metal runtime environment that enables high-level code execution without the need for a traditional operating system, utilizing an LLVM-based backend to generate efficient machine instructions. The project distinguishes itself through aggressive optimization techniques tailored for small hardware, including a static memory allocation strategy and whole-program dead code elimination that significantly re

    Goadafruitarduinoarm
    Auf GitHub ansehen↗17,529
  • ffmpegwasm/ffmpeg.wasmAvatar von ffmpegwasm

    ffmpegwasm/ffmpeg.wasm

    17,184Auf GitHub ansehen↗

    ffmpeg.wasm is a browser-based multimedia processing engine that brings the capabilities of the FFmpeg library directly to the client environment. By utilizing WebAssembly, it enables audio and video transcoding, format conversion, and stream recording to occur entirely within the browser without requiring server-side infrastructure. The library distinguishes itself by executing resource-intensive media tasks in background threads, ensuring that the main user interface remains responsive during complex operations. It manages data through an isolated, in-memory virtual file system, allowing fo

    Caudioexperimental-featuresffmpeg
    Auf GitHub ansehen↗17,184
  • yewstack/yewAvatar von yewstack

    yewstack/yew

    32,696Auf GitHub ansehen↗

    Yew is a framework for building front-end web applications using Rust and WebAssembly. It provides a component-based architecture that allows developers to create modular, reusable user interface elements that manage their own state and logic. By compiling code into binary modules, the framework enables high-performance execution within modern browser environments. The framework distinguishes itself through a macro-based markup language that transforms declarative, HTML-like syntax into strongly-typed component structures during compilation. It features a robust server-side rendering engine t

    Rustasmjsconcurrencyelm
    Auf GitHub ansehen↗32,696
Alle 30 Alternativen zu Emscripten anzeigen→

Häufig gestellte Fragen

Was macht kripken/emscripten?

Emscripten is a WebAssembly toolchain and compiler backend that transforms C and C++ source code into WebAssembly bytecode. It serves as a framework for porting native applications and libraries to web browsers and server runtimes by translating LLVM intermediate representation into optimized WebAssembly modules.

Was sind die Hauptfunktionen von kripken/emscripten?

Die Hauptfunktionen von kripken/emscripten sind: C/C++ to WebAssembly Compilers, Compiler Backends, Native-to-Web Porting Frameworks, Standard Library Implementations, WebAssembly, WebAssembly Glue Code Generators, Bytecode Compilers, WebAssembly Frameworks.

Welche Open-Source-Alternativen gibt es zu kripken/emscripten?

Open-Source-Alternativen zu kripken/emscripten sind unter anderem: assemblyscript/assemblyscript — AssemblyScript is a compiler and tooling suite used for WebAssembly module development. It converts a subset of… tinygo-org/tinygo — TinyGo is a specialized compiler and development toolkit designed to bring the Go programming language to… ffmpegwasm/ffmpeg.wasm — ffmpeg.wasm is a browser-based multimedia processing engine that brings the capabilities of the FFmpeg library… yewstack/yew — Yew is a framework for building front-end web applications using Rust and WebAssembly. It provides a component-based… wasmerio/wasmer — Wasmer is a high-performance runtime engine designed to execute sandboxed WebAssembly modules across server-side,… floooh/sokol — Sokol is a C hardware abstraction layer and cross-platform graphics library designed for managing windowing, input,…