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 scratch_extension_builder 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.2.tar.gz (5.5 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.2-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: scratchextensiontools-1.1.2.tar.gz
  • Upload date:
  • Size: 5.5 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.2.tar.gz
Algorithm Hash digest
SHA256 dd5f8d9c034371145d50309c03e844fd8f7eeeec89161288cb7071eca97bc894
MD5 2bd1825e39d93ea720c917d2881e4c7f
BLAKE2b-256 ad9d152da1e531326b1e52ee0a15176aa82f70b2e2450d04551581878d364832

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for scratchextensiontools-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ffb7dcc0136e6a0f7a3f837e157c0f4691a180e589ceb9cb40d2ede8816e0e8b
MD5 d1d2495f26491c82fd00e358569e49e7
BLAKE2b-256 385f603d27d11d9b06d0a7350095b63452ed92d82e58021e0150d1c6ecb3443e

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