Tuesday, October 28, 2025
Show HN: Rewriting Scratch 3.0 from scratch in Lua (browser-free native runtime) https://ift.tt/5Af6h7W
Show HN: Rewriting Scratch 3.0 from scratch in Lua (browser-free native runtime) Built a native Scratch 3.0 runtime in Lua that runs .sb3 projects without a browser. Why? Browser sandboxing prevents access to hardware features (haptics, sensors, fine-grained perf controls). Native runtime gives you direct hardware access and lets you deploy to consoles, handhelds, embedded devices. Also means much smaller binaries (LÖVE is ~7MB vs 50-100MB for Electron). How it works: - Scratch blocks compile to IR, then optimize, then generate Lua - LuaJIT executes the compiled code - Coroutine-based threading for concurrent scripts - Lazy loading + LRU cache for memory management - SVG support via resvg FFI ~100% compatible with Scratch 3.0 blocks. Extensions that need JavaScript won't work (no Music, TTS, Video Sensing), but core blocks are there. Built on LÖVE framework, so it's cross-platform (desktop, mobile, gaming devices). Still rough around the edges (user input not implemented yet, cloud variables only work locally), but it runs real Scratch projects today. https://ift.tt/Gc0EkQ6 October 28, 2025 at 11:08PM
Subscribe to:
Post Comments (Atom)
Show HN: Rewriting Scratch 3.0 from scratch in Lua (browser-free native runtime) https://ift.tt/5Af6h7W
Show HN: Rewriting Scratch 3.0 from scratch in Lua (browser-free native runtime) Built a native Scratch 3.0 runtime in Lua that runs .sb3 pr...
-
Show HN: An AI logo generator that can also generate SVG logos Hey everyone, I've spent the past 2 weeks building an AI logo generator, ...
-
Show HN: I Made an AI Social Media Manager to Automate Content Creation Hey HN, I am a Solopreneur, and I love building apps to automate bor...
-
RoboPianist, a piano playing robot simulation in the browser https://ift.tt/zywcBo6 March 30, 2023 at 10:52PM
No comments:
Post a Comment