Code, Design, and Create Games Together
Gandi IDE is an in-browser game engine, a mod of MIT Scratch with collaboration features that allow scratchers to design and code together in real-time. Gandi also contains many extensions to help developers make multi-player online games including MMO, MOBA, PvP, and PvE.
Featured Blog
Highlighted Features
Realtime Collaboration
Rich Extensions
High Performance
Realtime Collaboration
Teamwork makes the dream work. With Gandi, you can invite teammates to your project, design, code, and debug together in real-time. Say goodbye to the unreadable sb3 files spreading on your desktop. Gandi also allows you and your teammates to manage file versions right in the IDE.
Rich Extensions
Scratch is designed for educational purposes and has over 100 million users worldwide. But it also has tons of design flaws. Gandi is intended to solve these problems. Gandi extensions give you access to many features Scratch does not have, including unlimited clones, cloud variables and databases, JSON data structures, regular expressions, lazy loading, video and audio playback, multi-player game engines, and more.
Check out these highlighted extensions and use cases:
Gandi Simple MMO
Multi-player game extensions, with features including:
- Create broadcast/match/lobby rooms
- Broadcast messages to others in the room
- Sync player state automatically
For more details, please check: Simple MMO
Gandi Data Utils
A simple cloud database with JSON data structure utils
- Create cloud key-value pairs
- Read/write JSON objects
- Fill JSON arrays into a list
- Serialization and deserialization
For more details, please check: Data Utils
Gandi Media Utils
Audio and video playback with lazy loading feature.
- Lazy load media assets to reduce file size
- Audio playback with powerful audio effects
- Load video as a sprite or a costume
For more details, please check: Media Utils
Gandi 4D Pocket
Like Doraemon’s Pocket, it contains a lot of snippets:
- Regular Expressions with commonly used patterns
- Array utils including search, combine, sort, etc.
- Broadcast a message with given parameters(data)
For more details, please check: 4D Pocket
Other useful extensions
Chain
APIs to access user info and in-game purchases.
Plus even more extensions contributed by the community
Performance Improvement
Scratch interprets a syntax tree at runtime, a mechanism which slows run speed. Gandi compiled a project like TurboWarp that allows Gandi to run a project faster. Moreover, Gandi pushed the compiler forward to use WebAssembly for complex algorithms which will enable Gandi to run projects even faster.
Best Practice
How to figure out the sequence of the events while reading code?
How to figure out the sequence of the events while reading code?
How to trace the changes of a variable within an algorithm? | Debug Techniques
How to trace the changes of a variable within an algorithm? | Debug Techniques
How to Make a Multiplayer Game and Sync its State in Scratch
How to Make a Multiplayer Game and Sync its State in Scratch
HideBlogWhat’s New in Gandi IDEFeaturesShowcaseAbout usContactPress KitAcknowledgmentExtensions
Gandi 中文Scratch.st
‣
ABOUT
Type | Status | Name | Area | Tags |
---|---|---|---|---|
ABOUT |
‣
GETTING STARTED/Step-by-step guide
Type | Status | Name | Area | Tags |
---|---|---|---|---|
GETTING STARTED/Step-by-step guide | Up-to-date | blog | Tools | |
GETTING STARTED/Step-by-step guide | Up-to-date | blogWhat's New Feature | ExtensionTools |
‣
MANUAL/Editor
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Editor | To-do | features.managementblog | Tools | |
MANUAL/Editor | Version Control Keeps Your Scratch Projects Under Control | features.management | ||
MANUAL/Editor | Upload Your Scratch Assets to the Cloud | features.management | ||
MANUAL/Editor | Outdated | features.collaboration | ||
MANUAL/Editor | Up-to-date | features.collaboration | Best Practice | |
MANUAL/Editor | Up-to-date | blog | UpdateTools | |
MANUAL/Editor | Up-to-date | blog | UpdateTools | |
MANUAL/Editor | Up-to-date | blog | ToolsUpdate | |
MANUAL/Editor | Up-to-date | blog | CollaborationTools | |
MANUAL/Editor | Up-to-date | extensionsblog | Extension | |
MANUAL/Editor | Up-to-date | extensionsblog | Extension |
‣
MANUAL/Cocrea
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Cocrea | blog | Tools |
‣
MANUAL/Block reference
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Block reference | Up-to-date | extensionsWhat's New Featuretutorials.educator | Extension | |
MANUAL/Block reference | Async Asset | |||
MANUAL/Block reference | Up-to-date | extensionsWhat's New Featuretutorials.educator | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensionsfeatures.mmo | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Not.js | |||
MANUAL/Block reference | WitCat’s Mouse | |||
MANUAL/Block reference | WitCat’s Input | |||
MANUAL/Block reference | WitCat’s File Helper | |||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Up-to-date | extensions | ||
MANUAL/Block reference | Outdated | Tools | ||
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | To-do | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | blogextensions | Extension | |
MANUAL/Block reference | Up-to-date | blogextensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension | |
MANUAL/Block reference | Up-to-date | extensions | Extension |
‣
MANUAL/Best practices
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Best practices | Outdated | bestPractice | ||
MANUAL/Best practices | Outdated | bestPractice | ||
MANUAL/Best practices | Outdated | features.mmobestPractice | Simple MMOExtension | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blog | Best Practice | |
MANUAL/Best practices | Up-to-date | blog | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best PracticeSimple MMO | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogtutorials.educator | Best Practice | |
MANUAL/Best practices | Up-to-date | blogbestPracticePhysics | Best PracticeExtension | |
MANUAL/Best practices | Up-to-date | blogbestPracticePhysics | Best PracticeExtension | |
MANUAL/Best practices | Up-to-date | blogbestPracticePhysics | Best PracticeExtension |
‣
CSFirst
Type | Status | Name | Area | Tags |
---|---|---|---|---|
CSFirst | Up-to-date | CSFirst/Welcome to CS First | CS First | |
CSFirst | Up-to-date | CSFirst/Welcome to CS First | CS First | |
CSFirst | Up-to-date | CSFirst/Welcome to CS First | CS First | |
CSFirst | Up-to-date | CSFirst/Welcome to CS First | CS First |
‣
CONTRIBUTING/Guidelines
Type | Status | Name | Area | Tags |
---|---|---|---|---|
CONTRIBUTING/Guidelines | Writing | |||
CONTRIBUTING/Guidelines | Writing |