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 Event
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
Hide
Blog
What’s New
Features
Contact
Press Kit
Acknowledgment
Extensions
‣
ABOUT
Type | Status | Name | Area | Tags |
---|---|---|---|---|
ABOUT | Not started |
‣
GETTING STARTED/Introduction
Type | Status | Name | Area | Tags |
---|
‣
GETTING STARTED/Step-by-step guide
Type | Status | Name | Area | Tags |
---|
‣
GETTING STARTED/Your first Gandi IDE game
Type | Status | Name | Area | Tags |
---|
‣
MANUAL/Editor
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Editor | To-do | Find Your Next Inspiration in the Assets Marketplace | features.managementblog | Tools |
MANUAL/Editor | Not started | Version Control Keeps Your Scratch Projects Under Control | features.management | |
MANUAL/Editor | Not started | Upload Your Scratch Assets to the Cloud | features.management | |
MANUAL/Editor | Outdated | How to Communicate with Members in Gandi IDE? | features.collaboration | |
MANUAL/Editor | Outdated | How to Setup Realtime Online Collaboration with Friends? | features.collaboration | Best Practice |
MANUAL/Editor | Up-to-date | Scratch Blocks Have Never Been So Neat And Clear | blog | Tools |
‣
MANUAL/Cocrea
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Cocrea | Not started | Embed Your Scratch Game into Another Website | blog | Tools |
‣
MANUAL/Block reference
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Block reference | Not started | G-Kamera | ||
MANUAL/Block reference | Not started | Async Asset | ||
MANUAL/Block reference | Proofreading | AI Hub | extensions | Extension |
MANUAL/Block reference | Proofreading | Gandi Quake | extensions | Extension |
MANUAL/Block reference | Outdated | 4D Pocket | extensions | |
MANUAL/Block reference | Proofreading | Animated Text | extensions | |
Not started | Terminal | |||
MANUAL/Block reference | Outdated | Simple MMO | extensionsfeatures.mmo | |
MANUAL/Block reference | Outdated | Media Utils | extensions | |
MANUAL/Block reference | Outdated | Data Utils | extensions | |
MANUAL/Block reference | Outdated | Pure Math | extensions | |
MANUAL/Block reference | Outdated | Dolly | extensions | |
MANUAL/Block reference | Outdated | A* Odyssey | extensions | |
MANUAL/Block reference | Proofreading | Canvas | extensions | |
MANUAL/Block reference | Outdated | Syntactic Sugar | extensions | |
MANUAL/Block reference | Not started | Lazy Music | ||
MANUAL/Block reference | Proofreading | Face Sensing | extensions | |
MANUAL/Block reference | Proofreading | Physics Engine | extensions | |
MANUAL/Block reference | Proofreading | Fermi | extensions | |
MANUAL/Block reference | Not started | Not.js | ||
MANUAL/Block reference | Not started | WitCat’s Mouse | ||
MANUAL/Block reference | Not started | WitCat’s Input | ||
MANUAL/Block reference | Not started | WitCat’s File Helper | ||
MANUAL/Block reference | Proofreading | Archive Code | extensions | |
MANUAL/Block reference | Outdated | Arkos Code Snippets | extensions | |
MANUAL/Block reference | To-do | Regex VI | extensions | |
MANUAL/Block reference | To-do | Date and Time Calculator | extensions |
‣
MANUAL/Best practices
Type | Status | Name | Area | Tags |
---|---|---|---|---|
MANUAL/Best practices | Outdated | How to figure out the sequence of the events while reading code? | bestPractice | |
MANUAL/Best practices | Outdated | How to trace the changes of a variable within an algorithm? | Debug Techniques | bestPractice | |
MANUAL/Best practices | Outdated | How to Make a Multiplayer Game and Sync its State in Scratch | features.mmobestPractice | Simple MMOExtension |
MANUAL/Best practices | Proofreading | Add Attack Effects to Scratch Games | blog | Best Practice |
MANUAL/Best practices | Proofreading | How to Create a Clone with Preset Property? | blog | Best Practice |
MANUAL/Best practices | Proofreading | AI SALESMAN SPICE COOKIES DISH | blog | Best Practice |
‣
CONTRIBUTING/Guidelines
Type | Status | Name | Area | Tags |
---|---|---|---|---|
CONTRIBUTING/Guidelines | Writing | Documentation workflow | ||
CONTRIBUTING/Guidelines | Writing | Content guidelines | ||
CONTRIBUTING/Guidelines | Writing | Writing guidelines | ||
CONTRIBUTING/Guidelines | Writing | Share Your Best Practices with the Community | blog | Best PracticeCommunity |
‣
CONTRIBUTING/Ways to contribute
Type | Status | Name | Area | Tags |
---|
‣
COMMUNITY
Type | Status | Name | Area | Tags |
---|
‣
BLOG
Type | Status | Name | Area | Tags |
---|---|---|---|---|
BLOG | Up-to-date | AI Takeover: A Game Jam Theme for Dystopian Futures | blog | Event |
BLOG | Up-to-date | How to Choose between Cloud Variables, the KV Database, and Simple MMO? | blogfeatures.mmo | Online GameExtension |
BLOG | Up-to-date | 3 Tips for Online Collaboration in Gandi IDE | blogfeatures.collaboration | Collaboration |
BLOG | Up-to-date | Learn More about Your Scratch Projects with Code Analysis | blog | DC botTools |
BLOG | Up-to-date | Gandi IDE Weekly Game Fest is Coming! | blog | Event |
BLOG | Up-to-date | Compression Feature for Scratch Projects | blog | DC bot |
BLOG | Up-to-date | Level Up Your Game with Gandi IDE | blog | EventSimple MMO |
BLOG | Up-to-date | Genre Swap: A Game Jam Challenge to Mix and Match Game Genres | blog | EventCollaboration |
BLOG | Up-to-date | Embrace the Magic of Opposites: Join Our Scratch Game Jam #3! | blog | Event |
BLOG | Up-to-date | How to make your HTML Embed better? | blog | Best PracticeEvent |
BLOG | Up-to-date | Tips for Promoting Your Game in a Scratch Game Jam | blog | Event |
Gandi 中文
Scratch.st