2026
Released re-cmake v5.0.0.20260714 with the following changes:
- Added new exports for macOS build (
JukeboxExport_DisplaySetup,JukeboxExport_Draw,JukeboxExport_Gesture,JukeboxExport_Notify) to support custom displays with C++ bindings.
Available with RE Quickstart - Bootstrap Tool (v2.0.2)
Released RE Edit update: 4.6.0.20260712:
- With the non-backward compatible changes introduced in SDK 5.0.0, introducing a new version scheme reflecting the
RE SDK version. The new numbering scheme is
<re_sdk_version>.<year><month><day>. - Note that the name of the program remains
RE Editfor update purposes. The new version will be calledRE Edit 5.0.0to be able to have multiple versions installed and to allow re-cmake to pick up the correct version. - The new binary is also being made available on GitHub since prior versions were checking on GitHub for the latest version.
Released re-cmake v5.0.0.20260712 with the following changes:
- Added info about tools detected
- Removed hash (unreliable)
Released re-cmake 4.6.0.20260712 with the following changes:
- Removed hash (unreliable)
The RE Quickstart (Bootstrap Tool) has been updated to support both RE SDK 5.0.0 and RE SDK 4.6.0: the first step in the flow now lets you select which version of the RE SDK you want to use.
Released re-mock v5.0.0.20260708 with the following changes:
- Fixes crash discovered on Windows
Released re-mock v5.0.0.20260705 with the following changes:
- Updated to RE SDK 5.0.0
- Changes in internal structures to support the non-backward compatible API change of
TJBox_PropertyRef(struct-> number) - Implemented new APIs:
JBox_GetPropertyInfo,JBox_StoreMOMPropertyStringandJBox_StoreMOMPropertyStringTag - None of the new APIs related to drawing/custom displays in C++ have been implemented (ex:
JBox_DrawText): they are no-op when called - None of the new exports are being called (ex:
JBox_Export_Draw)
Released re-logging v5.0.0.20260708 and v4.6.0.20260709 and with the following changes:
- Fixes Windows build
Released re-cmake v5.0.0.20260708 with the following changes:
- Fixes Recon version
- Uses
re-mockandre-loggingnew versions with fixes for Windows
Released re-cmake v5.0.0.20260705 with the following changes:
- Updated to RE SDK 5.0.0
- Removed support for low res since SDK 5.0.0 no longer supports it
- removed targets
native-install-low-res,common-render-low-res,native-install-hi-resandcommon-render-hi-res - removed
-l/--low-resoption fromre.sh(resp.re.bat) - removed
RE_CMAKE_RE_2D_RENDER_HI_RES_OPTIONfrom the CMake build
- removed targets
- The dependecies (
re-mockandre-logging) have been updated to SDK 5.0.0 as well
Released re-cmake 4.6.0.20260709 with the following changes:
- Updated
re-loggingversion with fixes for Windows - Updated list of Recon to look for (up to Recon 14)
Released re-mock v4.6.0.20260703 with the following changes:
- With the non-backward compatible changes introduced in SDK 5.0.0, introducing a new version scheme reflecting the
RE SDK version. The new numbering scheme is
<re_sdk_version>.<year><month><day>. - Added compile definitions
RE_MOCK_VERSIONandRE_MOCK_VERSION_AS_NUMBER.
Released re-logging v4.6.0.20260703 with the following changes:
- With the non-backward compatible changes introduced in SDK 5.0.0, introducing a new version scheme reflecting the
RE SDK version. The new numbering scheme is
<re_sdk_version>.<year><month><day>. - Added
re-logging_NATIVE_COMPILE_DEFINITIONSas a CMake variable definingRE_LOGGING_VERSIONandRE_LOGGING_VERSION_AS_NUMBER.
Released re-cmake v4.6.0.20260703 with the following changes:
- With the non-backward compatible changes introduced in SDK 5.0.0, introducing a new version scheme reflecting the
RE SDK version. The new numbering scheme is
<re_sdk_version>.<year><month><day>. - Added compile definitions
RE_SDK_TARGET_VERSIONandRE_SDK_TARGET_VERSION_STRINGcorresponding to theTargetFieldfield inversion.txt, allowing code to be conditionally compiled based on the hosting API’s version. - The dependencies (
re-mockandre-logging) also use the new numbering scheme.
Pushed WebGPU Shader Toy update: v2026.06.11
- Added a new code option to show/hide line folding
- Added a new code option to show/hide the code minimap
- Added a new code option to automatically wrap if the line is too long (word wrap)
Run the new version
Released emscripten-ports v2026.06.06 with the following changes:
- Upgraded ImGui to 1.92.8
Released Jamba 7.5.1 with the following changes:
- Fixed the scrollbar view math computations issue (leading to a non-zero offset when the scrollbar is at the right (resp. top)).
Pushed WebGPU Shader Toy update: v2026.04.25
- Replaced the implementation of the editor with a more updated version.
Thanks to Johan Goossens for taking on the massive effort of rewriting the editor from scratch.
- This change adds many new features, amongst them:
- Syntax highlighting (which can be turned off via a setting)
- Search and replace
- Multiple cursors
- Check the ImGuiColorTextEdit repo for more details.
- Note that as a “negative” side effect, some shortcuts (like Ctrl+A / Ctrl+E for Home/End) are no longer available.
- This change adds many new features, amongst them:
Run the new version
Released emscripten-ports v2026.04.14 with the following changes:
- Upgraded ImGui to 1.92.7
Released Jamba 7.5.0 with the following changes:
- The scrollbar view has a new attribute to change the orientation of the scrollbar (horizontal or vertical).
- Due to the licensing changes of the VST3 SDK, Jamba is now dual-licensed under Apache 2.0 and MIT.
- The project has been moved to Codeberg.
- The project has been moved to Codeberg.
- The project has been moved to Codeberg.
- The project has been moved to Codeberg.
- The project has been moved to Codeberg.
- The code has been updated to check for new releases on Codeberg but since there are no new features, there is no need for a new version.
Released emscripten-glfw 3.4.0.20260301 with the following changes:
- Fixed GH#27: properly handles scale change (it was only working when switching back and forth between 2 scales)
- Fixed GH#29:
when the canvas does not have a
tabindexattribute, the library automatically adds one to make sure that the callback, set viaglfwSetWindowFocusCallback, is called when the canvas is focused/unfocused.
- The project has been moved to Codeberg.
- No code change.
- The project has been moved to Codeberg.
- No code change.
Released re-cmake v1.8.6 with the following changes:
- The project has been moved to Codeberg
- The dependencies (
re-mockandre-logging) have also been moved to Codeberg (check RECMakeOptions.cmake for details)
- The project has been moved to Codeberg.
- The project has been moved to Codeberg.
- The project has been moved to Codeberg.
Released Jamba 7.4.1 with the following changes:
- Moved the project to Codeberg. No new code will be pushed to GitHub.
- Check the migration guide for more details and help.
- The documentation project,
jamba-sample-gainhas been moved to Codeberg as well.
- The project has been moved to Codeberg.
Pushed WebGPU Shader Toy update: v2026.01.31
- Fixes #8: Render loop possibly does not pause when app is unfocused
- Although the main loop was not being called when switching tabs, the clock would still run
- Also enforces that the main loop does not run in the event that it gets called
Run the new version
Pushed WebGPU Shader Toy update: v2026.01.15
- Fixes #5: crash when the shader is missing the
fragmentMainentry function - Error messages are now easier to read (no more horizontal scrolling)
Run the new version
Released emscripten-ports v2026.01.06 with the following changes:
- The Dawn example no longer uses
ASYNCIFY, and instead, uses callbacks andemscripten_set_main_loop. This is a better design asASYNCIFYcan bloat the binary and is incompatible with using exceptions (ASYNCIFY=1 is not compatible with -fwasm-exceptions).
Pushed WebGPU Shader Toy update: v2026.01.04
- Upgraded to a more recent version of Dawn/WebGPU (v20251002.162335).
- Automatically moves the cursor to the error.
- Fixed an issue on Firefox when the shader had a compilation error.
Run the new version
2025
Released emscripten-glfw 3.4.0.20251230 with the following changes:
Released emscripten-glfw 3.4.0.20251217 with the following changes:
- Fixed #24:
glfwMakeContextCurrentnon-compliance - Use
emscripten_html5_remove_event_listenerwhich makes the library safer to use (it no longer iterferes with the client code). Note that the client should also useemscripten_html5_remove_event_listenerin order not to interfere with the library.
Released emscripten-ports v2025.11.23 with the following changes:
- Upgraded ImGui to 1.92.5
- dropped support for
-s USE_WEBGPU=1since it is no longer supported in Emscripten - use contrib port
emdawnwebgpuinstead
- dropped support for
Released Jamba 7.4.0 with the following changes:
-
Upgraded Jamba to use VST3 SDK 3.8.0 (release notes)
Note that the VST3 SDK is now released under an MIT license!
Released emscripten-ports v2025.10.15 with the following changes:
- Upgraded ImGui to 1.92.4
Released emscripten-ports v2025.09.27 with the following changes:
- Fixed Dawn example for Emscripten 4.0.15
Released emscripten-glfw 3.4.0.20250927 with the following changes:
- Fixed #23: Calling
glfwInit()breaks various input elements
Released emscripten-ports v2025.09.26 with the following changes:
- Upgraded ImGui to 1.92.3
Released emscripten-glfw 3.4.0.20250824 with the following changes:
- The code has been optimized for size
- Fixed #21: Flicker when resizing
- to fix this issue, resizing (when the handle is moved or the window resized) is now delayed until
glfwPollEvents()is called. Make sure to callglfwPollEvents()at the beginning of the loop to ensure a flicker-free experience. See Events & Main loop for more details.
- to fix this issue, resizing (when the handle is moved or the window resized) is now delayed until
Released re-mock update: v1.8.1
- Fixes issue with
JBOX_TRACEcalled from destructor
Released re-cmake v1.8.5 with the following changes:
- Use
re-mock1.8.1 (fix forJBOX_TRACEcrashing in destructor)
Released re-cmake v1.8.4 with the following changes:
- Use
re-logging2.0.2 (simplified prefix)
Available with RE Quickstart - Bootstrap Tool
Released re-logging v2.0.2 with the following changes:
- Simplified prefix logic
Released re-logging v2.0.1 with the following changes:
- Fixed prefix override
Released re-logging v2.0.0 with the following changes:
- Removed most of the loguru implementation in favor of a lighter implementation (#1)
- Only the major loguru APIs were kept (
DLOG_F,ABORT_F,DCHECK_FandDCHECK_*_Fvariants) - Added
RE_LOGGING_SET_VERBOSITYmacro to change the logging verbosity at runtime - Added
RE_LOGGING_DEFAULT_VERBOSITYC define to change the default logging verbosity at compilation time (default toINFO) - Added
RE_LOGGING_STRIP_FILE_PATHC define to change if the filename or the full path is displayed (default to filename) - Replaced
loguru::init_for_re(now deprecated) with the macroRE_LOGGING_INIT_FOR_RE - Replaced
loguru::init_for_test(now deprecated) with the macroRE_LOGGING_INIT_FOR_TEST
Released re-cmake v1.8.3 with the following changes:
- Use
re-logging2.0.1 (fix for prefix override)
Released re-cmake v1.8.2 with the following changes:
- Use
re-logging2.0.0 (fix for Rack Extension development lifecycle with Recon) - Renamed
RE_CMAKE_*_VERSIONtore-cmake_*_VERSIONto be consistent with other projects
Released emscripten-ports v2025.08.12 with the following changes:
- Upgraded ImGui to 1.92.2b (hot fix)
Released emscripten-ports v2025.08.12 with the following changes:
- Upgraded ImGui to 1.92.2
Released emscripten-ports v2025.07.12 with the following changes:
- Upgraded ImGui to 1.92.1
Released emscripten-ports v2025.06.26 with the following changes:
- Upgraded ImGui to 1.92.0
Released Jamba 7.3.0 with the following changes:
- Upgraded Jamba to use VST3 SDK 3.7.14 (release notes)
- Upgraded GoogleTest to 1.17.0
Released emscripten-ports v2025.06.08 with the following changes:
- Dawn port has been removed because it is now part of Emscripten (since 4.0.10) (
--use-port=emdawnwebgpu)
Released emscripten-glfw 3.4.0.20250607 with the following changes:
- The main port file has been simplified and is now using the new (as of 4.0.10) “external port file” Emscripten feature
Released Jamba 7.2.1 with the following changes:
- Uses “Visual Studio 17 2022” by default on Windows when creating a new device
(you can still use “Visual Studio 16 2019” via the
-Goption). Note that “Visual Studio 16 2019” is no longer automatically tested.
Released re-cmake v1.8.1 with the following changes:
- Updated GoogleTest version (to get rid of CMake warnings)
- Upgraded re-mock version
- Updated RE Quickstart to use this new version
Released emscripten-ports v2025.05.01 with the following changes:
- Added new port: Dawn for WebGPU support (JavaScript WebGPU support soon to be deprecated in Emscripten)
- Dawn is an open-source and cross-platform implementation of the WebGPU standard
Released emscripten-ports v2025.03.18 with the following changes:
- Upgraded ImGui to 1.91.9b (hotfix)
Released emscripten-ports v2025.03.14 with the following changes:
- Upgraded ImGui to 1.91.9
Released emscripten-glfw 3.4.0.20250305 with the following changes:
Released Jamba 7.2.0 with the following changes:
- Upgraded Jamba to use VST3 SDK 3.7.13 (release notes)
Pushed WebGPU Shader Toy update: v2025.02.27
- Fixes button disabled when going backward
Pushed WebGPU Shader Toy update: v2025.02.26
- Switching tabs pauses the shader clock
Released emscripten-ports v2025.02.24 with the following changes:
- When using WebGPU with ImGui, disable WebGL2 as it is unnecessary and adds to the final output size
Released emscripten-glfw 3.4.0.20250209 with the following changes:
Released emscripten-ports v2025.02.01 with the following changes:
- Upgraded ImGui to 1.91.8
Released emscripten-glfw 3.4.0.20250117 with the following changes:
- Added port option
disableWebGL2to disable support for WebGL2 when not needed (reduces JavaScript code size)
Released emscripten-ports v2025.01.14 with the following changes:
- Upgraded ImGui to 1.91.7
- Upgraded port file to force WebGL 2 to prevent errors with the Emscripten 4.0.0 release (which contains a contrib.glfw3 regression bug)
Released emscripten-glfw 3.4.0.20250112 with the following changes:
2024
Released emscripten-glfw 3.4.0.20241230 with the following changes:
- Added support for offscreen canvas (check example_offscreen_canvas for a comprehensive example)
Released re-cmake v1.8.0 with the following changes:
- Added support for optional patch metadata files (rsmeta) introduced in SDK 4.6.0
In addition, I updated the following projects accordingly:
- Updated RE Quickstart to use SDK 4.6.0
- Updated RE Blank Plugin to use SDK 4.6.0
Released emscripten-glfw 3.4.0.20241221 with the following changes:
- Added support for pthread (check example_pthread for a comprehensive example)
Released emscripten-ports v2024.12.11 with the following changes:
- Upgraded ImGui to 1.91.6
- Added
disableDefaultFontoption to the port to enable theIMGUI_DISABLE_DEFAULT_FONTdefine thus disabling building the default font completely (saves almost 25k in the final build)
- Added
Released SAM-SPL 64 v1.6.1 with the following changes:
- Fixed Audio Unit name collision
Released Jamba 7.1.3 with the following changes:
- Use
FetchContent_Populate/FetchContent_MakeAvailablewithSOURCE_SUBDIRoption (see CMake discussion)
Released SAM-SPL 64 v1.6.0 with the following changes:
- Fixed a crash when exporting the sample
- Make sure that the exported file is saved with the proper file extension
- Migrated to Jamba 7.1.2 / VST SDK 3.7.12
- Removed support for VST2
Released Jamba 7.1.2 with the following changes:
- Migrated Jamba to use VST3 SDK 3.7.12 (release notes). Please check other release notes to see what has changed since 3.7.8 (the previous SDK version supported by Jamba).
- Fixed deprecated CMake warnings with
FetchContent_Populate - Fixes issues with some DAWs on Windows when using the bundle format
- Fixes the
create-plugin.pytool on Windows
Proudly announcing the release of a brand-new project emscripten-ports.
The goal of this project is to collect ports that are not part of Emscripten.
The first port released is for ImGui, a bloat-free Graphical User interface for C++ with minimal dependencies.
Released emscripten-glfw 3.4.0.20241004 with the following changes:
- Implemented custom cursors (
glfwCreateCursor)- uses a canvas to draw the cursor image into it and convert it into a URL (
canvas.toDataURL()) - uses the CSS property syntax:
cursor: url(xxx) xhot yhot, autowhen callingglfwSetCursorwith a custom cursor
- uses a canvas to draw the cursor image into it and convert it into a URL (
Published a blog post
properly introducing emscripten-glfw.
You can read about the history of the project and some of the primary features.

Pushed WebGPU Shader Toy update: v2024.09.08
- Added a History menu to undo/redo Shader level changes.
- Added a Quick Export shortcut (
Cmd + S/Ctrl + S). - Added the ability to reset the settings only.
- Added a way to import a shader given a URL.
- Moved some examples outside the code and imported via URL.
- Added 2 examples: Fire and Marble.
Released emscripten-glfw 3.4.0.20240907 with the following changes:
- Fixed Meta/Super key workaround to also handle the rare (but possible) use-case of having other keys down before pressing the Meta/Super key
Pushed WebGPU Shader Toy update: v2024.08.18
- Added support for macOS keyboard shortcuts.
- Changed the “Compile Shader” shortcut to be
Ctrl + D(resp.Cmd + D) asCmd + Spaceis already taken. - Added an alternate way of rendering the shader in fullscreen mode: holding the
Altkey preserves the size/ratio of the shader window. - Upgraded
emscripten-glfwtov3.4.0.20240817which enables using macOS shortcuts and copy/paste in any text field (not just the editor).
Released emscripten-glfw 3.4.0.20240817 with the following changes:
- Major clipboard changes: the clipboard now uses the browser events to handle cut, copy and paste
- Added a way to tweak the timeouts for the Super + Key workaround (Super is also known as Meta or Cmd)
- Added a way to set which keys are allowed to be handled by the browser
- Added a convenient API to open a URL (
emscripten::glfw3::OpenURL) - Added a convenient API to detect if the runtime platform is Apple (
emscripten::glfw3::IsRuntimePlatformApple), mostly used for keyboard shortcuts (Ctrl vs. Cmd). - Added
GLFW/emscripten_glfw3_version.hwithEMSCRIPTEN_GLFW_VERSIONdefine for compilation time version detection EMSCRIPTEN_USE_PORT_CONTRIB_GLFW3port define now also contains the version
Breaking changes:
- The clipboard async API has been removed.
- Check the Clipboard support section for details on how to deal with the clipboard in your application.
Released emscripten-glfw 3.4.0.20240804 with the following changes:
- Fixed
nullptrissue when clipboard is empty - Fixed the internal clipboard being wiped on asynchronous callback error
The source code for WebGPU Shader Toy is now available on github.
Released emscripten-glfw 3.4.0.20240731 with the following changes:
- Added
emscripten_glfw_get_clipboard_stringthe C version ofemscripten::glfw3::GetClipboardStringto retrieve the clipboard asynchronously - Added a helper class
emscripten::glfw3::FutureClipboardStringto greatly simplify the more frequent use-cases GetClipboardString::value()now returns the internal clipboard in case of error, instead of throwing exception- Added
optimizationLeveloption to the emscripten port
Pushed WebGPU Shader Toy update: v2024.07.29
- Added the ability to swap the panes
Released emscripten-glfw 3.4.0.20240727 with the following release notes:
- Introduced C++ API (namespace
emscripten::glfw3) included withGLFW3/emscripten_glfw3.h:- provides a more correct API with sensible defaults (ex:
std::string_view/std::optional<std::string_view>vschar const *which may or may not benullptr) - allow for C++ only API (ex:
std::future) - the C API is still available if you would rather stick to it
- provides a more correct API with sensible defaults (ex:
- Implemented
emscripten::glfw3::GetClipboardString(C++ only) which provides a way of fetching the global clipboard in a browser environment (glfwGetClipboardStringis not the right API due to the asynchronous nature of the underlying platform API). - The cursor position is no longer clamped to the window size, and as a result, can have negative values or values greater than the window size. Note that GLFW implements a similar behavior on the macOS desktop platform.
- Implemented
glfwSetWindowPosCallback - Added support for GLFW Window Attribute
GLFW_HOVERED - Fixed #6:
emscripten_glfw_make_canvas_resizabledoes not clean up properly. - Fixed an issue with opacity: when using opacity, the handle is not working unless its z-index is higher than the canvas z-index
Pushed WebGPU Shader Toy update: v2024.07.21
- In automatic layout mode, added the ability to resize the two panes easily by clicking and dragging the space between them. Double-clicking will revert to an even split.
Pushed WebGPU Shader Toy update: v2024.07.19
- Added the ability to duplicate a shader (right-click on its name for a popup, or select the option in the
Shadermenu) - Handle error cases in dialogs (empty name, duplicate name, invalid size, etc…)
- Added
Ctrl + AandCtrl + Eshortcuts for beginning / end of line shortcuts (Select All is nowCtrl + Shift + A)</li>
Pushed WebGPU Shader Toy update: v2024.07.15
- Tweaked keyboard navigation: make sure that the editor always has preference
- Limit the size of the error message window
- Tweaked version number to make it more readable
Pushed WebGPU Shader Toy update: v2024.07.14
- Added the ability to take a screenshot
- : take a screenshot instantly (use the previous/default format)
- : open the menu to select a format and a filename
- Added the ability to enable/disable shader rendering ()
I am very happy to announce the release of WebGPU Shader Toy, a tool for experimenting with WebGPU fragment shaders and the WebGPU Shading Language (WGSL)
- Here is the product page
- Since this tool runs in your browser, you can try it

Released emscripten-glfw 3.4.0.20240625 with the following release notes:
- Implemented workaround for #4: Using Super + “Key” on macOS results in “Key” not being released.
Due to the broken state of javascript handling the
Super/Metakey, there is no good solution. The workaround implemented, releases all keys whenSuperis released. Although not a perfect solution, it guarantees that the state is eventually consistent:- if “Key” was released while “Super” was held, then when “Super” gets released, “Key” is released (later than when actually released, final state is consistent: “Key” in
Releasestate) - if “Key” is still held when “Super” is released, “Key” is released when “Super” gets released, but immediately gets a down event (Up/Down event, final state is consistent”: “Key” in
Pressedstate)
- if “Key” was released while “Super” was held, then when “Super” gets released, “Key” is released (later than when actually released, final state is consistent: “Key” in
Released re-mock update: v1.6.0
- Added support for
device_categoriesininfo.luawhich was added as a new requirement with Reason 13 - Deprecated automatic support for
std::filesystem::pathinfmtdue to UTF8: usepath.u8string()instead
Released RE Edit update: 1.6.4:
- Added support for
device_categorieswhich was added as a new requirement to Reason 13
Released re-cmake update: v1.7.2
- Updated
re-mockversion (added support fordevice_categories)
Released emscripten-glfw 3.4.0.20240617 with the following release notes:
- Fixed #3:
glfwGetKeymust return one ofGLFW_PRESSorGLFW_RELEASE
Released emscripten-glfw 3.4.0.20240616 with the following release notes:
- Implemented
glfwGetClipboardString. Note that due to the async (and restrictive) nature of thenavigator.clipboard.readTextcall, this synchronous API returns whatever was set via a previous call toglfwSetClipboardStringand ignores the external clipboard entirely.
Released emscripten-glfw 3.4.0.20240601 with the following release notes:
- Fixed #2: Dynamically changing HiDPI awareness does not trigger content callback
Released emscripten-glfw 3.4.0.20240514 with the following release notes:
- Implemented
glfwSetClipboardString
Released emscripten-glfw 3.4.0.20240501 with the following release notes:
- Fixed issue when calling
glfwGetWindowContentScalewithnullptr - Renamed javascript api/impl since these names are not unique to avoid potential conflicts
- Added
glfw3native.htoGLFW. Although not used (at this moment) by this implementation, this allows calling code to include it if necessary since it is part of a normal GLFW installation.
Released emscripten-glfw 3.4.0.20240318 with the following release notes:
- Fixed joystick/gamepad code that was improperly mapping
GLFW_GAMEPAD_AXIS_LEFT_TRIGGERGLFW_GAMEPAD_AXIS_RIGHT_TRIGGER,GLFW_GAMEPAD_BUTTON_LEFT_THUMBandGLFW_GAMEPAD_BUTTON_RIGHT_THUMB GLFW_GAMEPAD_AXIS_LEFT_TRIGGERandGLFW_GAMEPAD_AXIS_RIGHT_TRIGGERare now properly represented as an analog value in the range[-1.0, +1.0]- Please note the change in version numbering which from now on will be tied to the GLFW version implemented + date of release of this port to avoid confusion
I released emscripten-glfw 1.1.0 which implements GLFW 3.4 APIs:
- Upgraded to GLFW 3.4
- GLFW 3.4 features implemented
glfwGetPlatformandglfwPlatformSupporteduses theGLFW_PLATFORM_EMSCRIPTENconstant defined inemscripten-glfw3.h(officially reserved value is0x00060006)glfwInitHintsupports the new hintGLFW_PLATFORM- Supports all 10 cursors
- Implemented
glfwGetWindowTitle - Use
GLFW_SCALE_FRAMEBUFFERto enable (resp. disable) Hi DPI support - Changed the functions that can report
GLFW_FEATURE_UNAVAILABLEfailure to report this error instead of a warning
- GLFW 3.4 features not implemented
GLFW_MOUSE_PASSTHROUGHis not supportedGLFW_CURSOR_CAPTUREDcursor input mode is not supported (not possible in a browser context)glfwInitAllocatoris implemented as noop (could be supported for the C++ part only if there is demand, not javascript)GLFW_POSITION_XandGLFW_POSITION_Yare not supported (same asglfwSetWindowPos)GLFW_ANGLE_PLATFORM_TYPEis not supported (no direct access in browser, but implementation is most likely using it anyway)
- Since GLFW 3.4 introduces a proper constant to handle Hi DPI Awareness (
GLFW_SCALE_FRAMEBUFFER), the prior constant used by this port (GLFW_SCALE_TO_MONITOR) is still accepted, but it is now deprecated. In addition, due to the fact thatGLFW_SCALE_FRAMEBUFFERdefaults toGLFW_TRUE, this port is now Hi DPI aware by default and needs to be explicitly turned off (glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_FALSE)) if this is the desired behavior.
Note: These changes are available in emscripten 3.1.56 (released on 2024/03/14) via the contrib port contrib.glfw3
I released emscripten-glfw 1.0.5 with a critical bug fix:
- Fixed memory corruption with joystick
Note: These changes are available in emscripten 3.1.55 (released on 2024/03/01) via the contrib port contrib.glfw3
Released 1.6.3:
- Fixed issue with contrast not being saved
I am very happy to announce the 1.0 release of my new free and open source project emscripten-glfw which is a port of glfw written in C++ for the web/webassembly platform.
Check out the live demo.

2023
Just released a new version of my Roku screensaver B.P.O.D.: 1.1.0
- Added “Title” settings to control when the title of the image gets displayed
New re-cmake update: v1.7.1
- Fixes issue locating RE2DRender and RE2DPreview after SDK 4.4.0 final release
Just released a new re-mock updated: v1.5.0
- Upgraded SDK to 4.4.0
Note that JukeboxTypes.h has some new defines but it is not really affecting the project…
A new release is available: 7.0.0
- Migrated Jamba to use VST3 SDK 3.7.8 (release notes). Please check other release notes to see what has changed since 3.7.5 (last Jamba supported version).
- As explained in issue #16, Jamba is no longer supporting VST2
- Added a way to patch the SDK by defining the CMake cache string
JAMBA_VST3SDK_PATCH_DIR(Jamba uses it on Windows/DLL build to fix an issue withwin32resourcestream.cpp, but you can also use it for your own purposes): by defining this variable, 2 things happen- Jamba copies the SDK inside the build folder
- Jamba copies all the files under
${JAMBA_VST3SDK_PATCH_DIR}on top of this copy while never modifying a local version of the SDK
A new version of SAM-SPL 64 has been released: v1.5.0:
- Added support for MP3, Flag, Ogg Vorbis (in addition to WAV and AIFF)
- Added error message when issue with loading file
- Fixed sound issues with Bitwig Studio
- Fixed drag and drop bug