Skip to content

An automated derivative of scratch-blocks with KIPR-specific blocks

License

Notifications You must be signed in to change notification settings

kipr/kipr-scratch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f0d53df · Dec 28, 2024

History

36 Commits
Jan 23, 2023
Dec 23, 2024
Feb 1, 2023
Jan 23, 2023
Jan 23, 2023
Jan 23, 2023
Dec 24, 2024
Dec 23, 2024
Jan 23, 2023
Feb 14, 2023
Feb 1, 2023
Dec 24, 2024
Feb 13, 2023
Feb 13, 2023

Repository files navigation

kipr-scratch

A patched version of scratch-blocks that includes KIPR functions and is compatible with library-style packaging. A CD step automatically builds and deploys this repository under the NPM package name @kipr/scratch-blocks.

Steps

  1. Generate SWIG XML bindings for libwallaby/libkipr - This step gives us a machine-readable set of function defintions from libkipr.
  2. Convert the SWIG XML into Blockly JS definitions - We write these out to scratch-blocks/blocks_vertical.
  3. Create a Default Toolbox - A default toolbox is generated from default_toolbox.json in conjuction with the SWIG XML definitions. This file is written out as a JS/XML blob in scratch-blocks/blocks_vertical.
  4. Remove unsupported Scratch blocks - We don't need (and don't support) functions like "Wait for Mouse Click".
  5. Build scratch-blocks
  6. Move compressed JS into the NPM package template @kipr/scratch-blocks
  7. Publish NPM package to private registry.

Building

git submodule init --update
python3 build.py

About

An automated derivative of scratch-blocks with KIPR-specific blocks

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages