awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
scratchfoundation avatar

scratchfoundation/scratch-blocks

0
View on GitHub↗

Scratch Blocks

Scratch-blocks is a block-based visual programming library and framework used to create graphical programming interfaces. It provides a visual environment that translates interlocking blocks into executable code, serving as a foundation for educational coding interfaces and visual programming languages.

The project is implemented as a customized extension of the Google Blockly ecosystem. It enables the development of domain-specific languages through a drag-and-drop interface, supporting the creation of custom block libraries and no-code tool development.

The framework handles the structural mechanisms of block-based systems, including constraint-based snapping, coordinate-based positioning, and event-driven input. It manages program state through JSON-based serialization and uses schema-driven definitions to determine block appearance and connectivity.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI
scratch.mit.edu/developers
↗

Features

  • Educational Programming Environments - Serves as a foundation for integrated platforms that teach software development concepts through visual block editors.
  • Block-Based Visual Interfaces - Implements a drag-and-drop interlocking block editor for building logic without manual coding.
  • Blockly Extensions - Implemented as a specialized extension of the Google Blockly ecosystem for educational scripting.
  • Visual Programming Tools - Provides an environment for creating graphical programming interfaces that define application logic through interlocking blocks.
  • Visual Block Designers - Provides an interface for designing specialized graphical components that represent specific functions in a visual language.
  • Visual Language Frameworks - Provides a framework for defining the shapes, behaviors, and input fields of custom blocks for domain-specific languages.
  • Block-Based Code Generators - Translates visual arrangements of interlocking blocks into executable source code for beginners and students.
  • Block-Based Coding Libraries - Provides a comprehensive framework for creating visual programming languages that translate block arrangements into executable code.
  • Visual Block Schemas - Uses configuration-driven schemas to define the visual appearance and connectivity rules of programming blocks.
  • No-Code Platforms - Enables the development of software that allows non-programmers to build complex workflows using a visual block system.
  • JSON Serializers - Converts nested block hierarchies into structured JSON trees for saving and loading program state.
  • Workspace Coordinate Management - Manages a global 2D workspace coordinate system for free-form movement, zooming, and panning of visual blocks.
  • Event-Driven Input Handlers - Utilizes a centralized event system to map mouse and keyboard inputs to mutations of visual programming blocks.
  • Block Snapping Logic - Implements constraint-based snapping to ensure programming blocks align correctly during drag-and-drop interactions.
2,750 stars·1,534 forks·JavaScript·Apache-2.0·23 views

Star history

Star history chart for scratchfoundation/scratch-blocksStar history chart for scratchfoundation/scratch-blocks

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does scratchfoundation/scratch-blocks do?

Scratch-blocks is a block-based visual programming library and framework used to create graphical programming interfaces. It provides a visual environment that translates interlocking blocks into executable code, serving as a foundation for educational coding interfaces and visual programming languages.

What are the main features of scratchfoundation/scratch-blocks?

The main features of scratchfoundation/scratch-blocks are: Educational Programming Environments, Block-Based Visual Interfaces, Blockly Extensions, Visual Programming Tools, Visual Block Designers, Visual Language Frameworks, Block-Based Code Generators, Block-Based Coding Libraries.

Which projects share features with scratchfoundation/scratch-blocks?

Projects with overlapping indexed features include: raspberrypifoundation/blockly — Blockly is a web-based visual programming editor and block-based code generator. It allows users to create programs by… scratchfoundation/scratch-gui — scratch-gui is a block-based visual programming editor and educational coding interface. It provides a web-based… google/blockly — Blockly is a block-based coding library and visual programming editor that allows users to build programs by… petoicamp/opencat-quadruped-robot — OpenCat-Quadruped-Robot is a development framework and motion control API for building four-legged robots. It provides… olistic/warriorjs — Warriorjs is a programming game framework and code-based logic puzzle where players write code to control characters… obra/superpowers — Superpowers is a browser-based game development engine and collaborative integrated development environment. It…

Projects sharing features with Scratch Blocks

These projects share indexed features with Scratch Blocks. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • raspberrypifoundation/blocklyRaspberryPiFoundation avatar

    RaspberryPiFoundation/blockly

    13,437View on GitHub↗

    Blockly is a web-based visual programming editor and block-based code generator. It allows users to create programs by interlocking graphical blocks that translate into executable source code for various programming languages, removing the need for manual syntax entry. The project serves as a customizable framework for building specialized visual languages through a customizable block library. It includes a visual block designer for defining custom shapes, behaviors, and specialized input fields, as well as a plugin system to extend the editor's environment. The system manages programming lo

    JavaScript
    View on GitHub↗13,437
  • scratchfoundation/scratch-guiscratchfoundation avatar

    scratchfoundation/scratch-gui

    4,809View on GitHub↗

    scratch-gui is a block-based visual programming editor and educational coding interface. It provides a web-based environment for creating and executing interactive programs using a drag-and-drop block system. This open-source project editor is built as a React-based web application. It serves as a graphical environment designed to teach programming concepts through visual logic and immediate execution within a structured workspace.

    JavaScript
    View on GitHub↗4,809
  • google/blocklygoogle avatar

    google/blockly

    13,436View on GitHub↗

    Blockly is a block-based coding library and visual programming editor that allows users to build programs by interlocking graphical blocks. It functions as a visual code generator, translating these arrangements of logic blocks and variables into executable source code for various programming languages. The library provides a framework for creating custom visual programming languages and low-code logic designers. It utilizes an SVG-based UI library to render interactive, draggable elements on a web canvas. The system is designed as an accessible web UI framework with integrated keyboard navi

    JavaScript
    View on GitHub↗13,436
  • petoicamp/opencat-quadruped-robotPetoiCamp avatar

    PetoiCamp/OpenCat-Quadruped-Robot

    4,891View on GitHub↗

    OpenCat-Quadruped-Robot is a development framework and motion control API for building four-legged robots. It provides a comprehensive environment for quadruped robot development, featuring tools for locomotion gait design, inverse kinematics, and a layered control architecture that separates high-level intelligence from low-level motion. The project distinguishes itself as an embedded AI deployment tool, allowing users to train, quantize, and deploy machine learning models to vision modules for tasks such as object detection and visual target tracking. It further supports complex human-robot

    C++aiarduinoblock-coding
    View on GitHub↗4,891
  • Compare all 30 related projects→