// the find
cloudwu/soluna
A simple 2d game framework
Soluna is a 2D game framework that wraps sokol (a minimal C cross-platform library) and exposes it to Lua, with ltask handling multithreading. It targets Windows, Linux, macOS, and WebAssembly. cloudwu is the author of skynet, so this isn't a hobby project — there's real systems programming experience behind it.
sokol as the base is a smart choice: single-header, no heavy dependencies, proven WebAssembly support, so Soluna inherits all of that portability for free. The ltask integration means you get cooperative multitasking for things like audio services and loaders without blocking the render thread — that's architecture most small frameworks skip entirely. Nightly binary releases with CI-built WASM artifacts lower the barrier to entry significantly; you don't need a working C toolchain to try it. The Yoga layout engine inclusion is a notable pick — proper flexbox-style layout in a 2D game framework is genuinely useful for UI-heavy games.
373 stars and one known project (Deep Future) means the ecosystem is essentially cloudwu's own use case, so you're likely to hit sharp edges with no community answers. The build story is awkward: Windows uses a plain Makefile but other platforms need luamake, and the WebAssembly path requires emcc — three different build tool requirements before you write a line of Lua. Documentation exists but is generated from Lua files in /docs, which means the API reference is as complete as cloudwu chose to document, no more. No versioned releases — just nightly builds from HEAD — means adopting this in anything production-adjacent requires pinning to a commit hash and hoping nothing breaks.