Giter Club home page Giter Club logo

scratch-gui's Introduction

scratch-gui

This project is fork from LLK/scratch-gui, it's goal is to complete a program that can build upload code to hardware. Especially for arduino and microbit. At present, this core function has been realized. But still need to improve the detail function for ordinary users.

This is a fast changing and incomplete program. It's for professional developer.

5

6

7

1

2

3

4

4

Installation

  1. Before build scratch-gui. You should clone these link. Run npm install and npm link in these floders. (If you are in China. You may need to use net proxy to finish the following)

    git clone https://github.com/zhengyangliu/saveSvgAsPng
    git clone https://github.com/zhengyangliu/scratch-audio
    git clone https://github.com/zhengyangliu/scratch-blocks
    git clone https://github.com/zhengyangliu/scratch-l10n
    git clone https://github.com/zhengyangliu/scratch-render
    git clone https://github.com/zhengyangliu/scratch-vm
    cd saveSvgAsPng
    npm install
    npm link
    cd ..
    cd scratch-audio
    npm install
    npm link
    cd ..
    ...
  2. Add some code to scratch-blocks/arduino_compressed.js, according to this Instruction.

  3. CLone and run install in scratch-gui, then link those project.

    git clone https://github.com/zhengyangliu/scratch-gui
    cd scratch-gui
    npm install
    npm link save-svg-as-png scratch-audio scratch-blocks scratch-l10n scratch-render scratch-vm
  4. Clone scratch-link then install and run

    git clone https://github.com/zhengyangliu/scratch-link
    cd scratch-link
    npm install

Running

  1. First start scratch-link, to provide hardware function link to scratch gui.

    cd scratch-link
    npm run start
  2. Start scratch-gui

    cd scratch-gui
    npm run start-open
  3. After webpack build finish, you should see a browser page pop up. Have fun.

Project Structure Instruction

...

Development planning

  • Read indefinite number of extensions from a specified path. Include the info of the extensions.
  • Update toolbox by extensions.

Feature List

Little

  • Modify the execution program of code generation, so that blocks' code can be generated immediately after modification, instead of waiting for the block drag to update.
  • Fix the bug. When start at upload mode, the sprite of stage won't render even if we change to realtime mode.
  • If device can not be connected, don't display original scratch link information, show the info of new scratch-link.

Big

  • Load and unload extensions by click.
  • Lock block by program mode.
  • Read indefinite number of extensions from a specified path. Include the info of the extensions.
  • Add device selection windows. Extension content list can change by this selection.
  • Update toolbox by deveice selection.

Bug Report

You can submit the Bug log in Issues of this project.

scratch-gui's People

Contributors

paulkaplan avatar greenkeeper[bot] avatar chrisgarrity avatar kchadha avatar benjiwheeler avatar ericrosenbaum avatar dependabot-preview[bot] avatar rschamp avatar fsih avatar thisandagain avatar evhan55 avatar picklesrus avatar apple502j avatar zoebentley avatar cwillisf avatar quachtina96 avatar adroitwhiz avatar sjhuang26 avatar towerofnix avatar josiahneuberger avatar mzgoddard avatar bogusred avatar tmickel avatar bryceltaylor avatar nikhiljha avatar lifaythegoblin avatar lifeinchords avatar foobartles avatar kenny2github avatar gnarf avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.