Skip to main content

Tools to help build Scratch extensions in Python.

Project description

Scratch Extension Tools

A Scratch Extension Tools. It can help you made Scratch Extension.

📦 Installation

pip install ScratchExtensionTools

📜 Changelog

See CHANGELOG.md

QuickStart

from ScratchExtensionTools import ScratchExtensionBuilder

builder = ScratchExtensionBuilder()

def hello_func():
    print("Hello Scratch!")

builder.create_block(
    opcode="say_hello",
    block_type="command",
    text="say hello",
    py_func=hello_func,
    show_in=['sprites']  # Python side argument, exported as `filter` in Scratch JSON
)

js_code = builder.build_extension(
    ext_id="demo",
    ext_name="Demo Extension",
    ext_color="#ffcc00"
)

print(js_code)  # => Scratch JS Extension

⚠️ Note on filter / showin

In Scratch extension JSON, the property is filter. But since filter is a Python built-in, this library uses the keyword showin on the Python side. It will still output filter correctly in the generated Scratch extension JSON.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scratchextensiontools-1.1.3.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scratchextensiontools-1.1.3-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file scratchextensiontools-1.1.3.tar.gz.

File metadata

  • Download URL: scratchextensiontools-1.1.3.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.9 Windows/11

File hashes

Hashes for scratchextensiontools-1.1.3.tar.gz
Algorithm Hash digest
SHA256 bffd43d6681679ba60000f480ea59e745007f83ca689033dd46db977c9ba926b
MD5 8a689ad19b16d008d886eb48b7f30812
BLAKE2b-256 c226987639e06b508fa50f2fc59c4ca5002ac79f45bc7f5f6ec5765a8a6a62e7

See more details on using hashes here.

File details

Details for the file scratchextensiontools-1.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for scratchextensiontools-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0924d43d152169f179fce9a6df1bf14a9b8bd4f0824a11954aab1090b2434667
MD5 a33c14ca8717eaaf17aff067981a3e9c
BLAKE2b-256 fec9ed7343714318c9630ee3ac62fc66e582e469e7c5e123f60833a48835438b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page