Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Discussion thread of resources useful to the project #1

Open
tanhengyeow opened this issue Feb 20, 2020 · 1 comment
Open

Discussion thread of resources useful to the project #1

tanhengyeow opened this issue Feb 20, 2020 · 1 comment
Labels
discussion Discussing insights that are helpful to the project

Comments

@tanhengyeow
Copy link
Member

Introduction

This issue curates a list of useful resources for the project. More categories of resources can be added over time as the project grows. An in-depth discussion pertaining to the resources can be held here too.

Scratch Extension related sources

Scratch 3.0 Extensions Official Documentation - Describes the official specification for making a Scratch Extension.


How to set up your development environment for making extensions - Detailed post describing the Scratch ecosystem, which is made up of different packages (gui, vm, blocks, and render), and how to set up the development environment to build extensions.


Scratch Extensions Wiki Page - Wiki page describing Scratch Extensions in general.


Scratch Blocks + Block Types You Can Develop and Samples- Wiki page and medium post describing the types of blocks and its different categories.


Discussion of unofficial Scratch Extensions - Post discussing how to load and run unofficial Scratch Extensions.


Creating extensions for Scratch 3.0 - Detailed post describing how to create an extension and register it in Scratch.

Note: The usage of Scratch.extensions.register(new <BlockName>()); is needed as the extension is loaded externally as an unofficial extension (not one of the extensions listed here).


Blog post detailing the process of building a Scratch 3.0 extension - In this post, it also mentioned a website (https://sheeptester.github.io/scratch-gui/) to test an unofficial extension, which we can also use.


How to Develop Your Own Block for Scratch 3.0 - Medium article on how to develop a Scratch 3.0 extension.

Note: The article describes code assuming we are developing on top of Scratch's codebase, which is why code can be referenced from the local directory e.g:

const ArgumentType = require('../../extension-support/argument-type');
const BlockType = require('../../extension-support/block-type');
const Cast = require('../../util/cast');
const log = require('../../util/log');

The extension is registered in src/lib/libraries/extensions/index.jsx, which is also mentioned in this post.

Right now, we should explore the usage of Scratch.extensions.register(new <BlockName>()); instead as we do not plan to build directly on top of Scratch's codebase.

Other projects

Machine Learning for Kids supporting Scratch 3.0 - Issues, PRs and discussion on the process of supporting Scratch 3.0 in the project.

@tanhengyeow tanhengyeow added the discussion Discussing insights that are helpful to the project label Feb 20, 2020
@tanhengyeow tanhengyeow pinned this issue Feb 20, 2020
@tanhengyeow
Copy link
Member Author

Someone created a Chart Engine for Scratch for users to easily include charts in their projects. It consists of a Scratch program that draws charts using the current Scratch blocks.

We could use this resource as inspiration and programmatically create charts via our custom blocks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Discussing insights that are helpful to the project
Projects
None yet
Development

No branches or pull requests

1 participant