Skip to content

jexapatron/ZetroStudio24

 
 

Repository files navigation

This is a rewrite of Tosh, my text-based Scratch project editor.

This version is open-source, with a readable, modern codebase.

Dependencies

  • Project player thanks to Nathan's Phosphorus, as before
  • Uses Nearley for parsing. (Originally Tosh used a home-grown Earley parser for performance reasons; I've now rolled lots of perf improvements into Nearley :-))
  • Uses my optimised lexer Moo
  • Uses nearley-reverse for transforming Scratch AST into Tosh code (on load); this is the opposite of parsing, which happens on save/run
  • Uses Nathan's v2 for views, model, undo, menus, etc

Current status

  • Load/save seems to work

  • Importing / compiling scripts is there, but needs extensive testing & improvement

  • Measuring scripts is fully implemented & tested (so we can "clean up" when saving to sb2)

  • Playing projects seems to work

  • No sprite management

  • No costume management (nor am I particularly interested in adding this!)

  • Highlighting almost works

  • Completion is in-progress but goodness it's a difficult problem

Future plans:

  • A desktop version for Win/Mac based on my unreleased lightweight Electron clone

Running

git clone --recursive https://github.com/tjvr/tosh2
cd tosh2
echo ';window.P = P' >> phosphorus/phosphorus.js
yarn
yarn grammar && yarn test
yarn start

http://localhost:8080/app/

If someone wants to set up browserify/babelify for bundling, that would be excellent

About

The flagship version of Zetro Studio used from 22, 23 and 24.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 91.8%
  • Nearley 4.8%
  • CSS 2.9%
  • HTML 0.5%