> ...Emscripten which reimplements parts of popular libraries like SDL

AFAIK those library headers are just historical artifacts from a time when those library didn't have official Emscripten ports, and which today are only reluctantly maintained if at all.

Emscripten's web API wrappers make a lot of sense though, and the other unique feature is the 'inline Javascript' support (so you don't need to maintain the Javascript glue code in separate .js source files).

interesting; I didn't realize libraries were adding official emscripten ports using the emscripten APIs. That's definitely a level up in my eyes, then.

At least SDL2 has 'proper' Emscripten support:

https://wiki.libsdl.org/SDL2/README/emscripten

My own cross-platform headers too:

https://github.com/floooh/sokol

...there are also auto-generated Zig bindings btw ;)

https://github.com/floooh/sokol-zig