Scratchnative Save

Convert Scratch3 projects to native executables

Project README

Scratchnative

now in rust!

Scratchnative is an ongoing project to compile Scratch3 programs to native executables.

How does it work

Here's how Scratchnative is able to compile Scratch3 projects:

  1. It serializes the project.json file contained in the .sb3 Scratch file (which is a zip) using serde
  2. It builds an abstract syntax tree (AST) akin to any programming language's AST
  3. It outputs C++ code by iterating through the AST

Eventually, I will write documentation on the project.json file format as the current docs are quite vague and unclear.

State of the project

Right now, Scratchnative is able to compile very basic Scratch3 projects (e.g basic operators, loops and expressions), albeit without graphics, to C++ with the help of a runtime.

Open Source Agenda is not affiliated with "Scratchnative" Project. README Source: scratchnative/scratchnative
Stars
266
Open Issues
3
Last Commit
5 months ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating