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=['sprite']  # 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.2.2.tar.gz (5.6 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.2.2-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: scratchextensiontools-1.2.2.tar.gz
  • Upload date:
  • Size: 5.6 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.2.2.tar.gz
Algorithm Hash digest
SHA256 59a739f6abefddc4186a02c5cd6764fcb058e048244ec44890106ff97fd5ca6d
MD5 87d044f71355d190b10acb223f5ab9ed
BLAKE2b-256 845dafffcfbe22a45912ce1f9bb22428e06ee9c5bbbbc43243b86f74554aa394

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for scratchextensiontools-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bf06b33b630876b4d58f78b484b015b03069ef73c23b0183bde67a612fc932b6
MD5 5b7a9d0e6db18e35f72532e02cbe3a28
BLAKE2b-256 b1103da9d4bde52ee95bd0dd5d5ba11276a3160bf5e10cbdf356e6932ca66bbf

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