Since Emscripten 3.1.54, ports can be external. This project is meant to collect ports that are not part of Emscripten. I wrote a blog post about this topic here.
Tip
An Emscripten port file is essentially a recipe to fetch the proper artifact(s) and compile the project for the WebAssembly platform.
- The
ports
directory contains each port - The
examples
directory contains examples on how to use each port and should be the primary source for documentation
- Copy the port file in your project
- Use the
--user-port
option to use it
# get help about a port (use the correct path to the file depending on your project)
> emcc --use-port=ports/ImGui/imgui.py:help
Project | Version | Port | Description | Examples |
---|---|---|---|---|
Dear ImGui | 1.92.1 | imgui.py |
Bloat-free Graphical User interface for C++ with minimal dependencies | Examples (GLFW + OpenGL3 / GLFW + WebGPU / SDL2 + OpenGL3) |
These ports were eventually added to Emscripten (keeping it here as a reference)
Project | In Emscripten Since | Port | Description | Examples |
---|---|---|---|---|
Dawn | 4.0.10 | --use-port=emdawnwebgpu |
An open-source and cross-platform implementation of the WebGPU standard | Example |
- MIT License. This project can be used according to the terms of the MIT license.