Blocks first, text later
Block coding lets children snap commands together instead of typing them, so a missing bracket cannot stop a project. Most platforms here start with blocks, and a few lead over to typed code:
| Platform | Coding style | Age range on the official page | Offline |
|---|---|---|---|
| ScratchJr | Picture blocks | Ages 5-7 | App |
| OctoStudio | Blocks on a phone or tablet | Ages 7+ | Yes |
| Scratch | Blocks | Age range 8-13+ | Scratch App |
| CodeAI (formerly Code.org) | Blocks, then labs for apps, games and web pages | Ages 5 to 11 and 11 and up | |
| Blockly Games | Blocks, then JavaScript | For children without prior programming experience | Download |
| MakeCode for micro:bit | Blocks or JavaScript | Cached web app or offline app | |
| Snap! | Blocks with advanced features | For kids and adults | Progressive web app |
| MIT App Inventor | Blocks that build phone apps | Everyone, even children | |
| Swift Playground | Real Swift code | From eight to one-hundred-and-eight | App |
Blockly Games is built as a bridge: its last games switch back and forth between blocks and actual JavaScript, and MakeCode lets you switch to JavaScript to see the text-based code behind the blocks. When a child is ready to type real code, our list of free sites to learn to code continues from there.
Ages: what the official pages say
We only list age ranges that the projects state themselves. The Scratch Foundation gives 5-7 for ScratchJr, 8-13+ for Scratch and 7-12+ for OctoStudio on its tools page, while OctoStudio's own site says it is designed for ages 7+. ScratchJr was designed with pre-readers in mind and uses icon-based blocks, so children can start before they read. CodeAI splits its student pages into grades K-5 (ages 5 to 11), which start with block-based coding, and grades 6-12+ (ages 11 and up), which move to App Lab, Game Lab and Web Lab.
The others name no exact range. Blockly Games is designed for children who have not had prior experience with programming, Snap! calls itself a programming language for kids and adults, MIT App Inventor says it lets everyone, even children, build apps, and MakeCode states no age at all. Treat the ranges as a starting point: a confident reader can move on early, and an older beginner loses nothing by starting with blocks.
Offline use and accounts
School networks fail and tablets travel. Several platforms keep working without a connection:
- The Scratch App creates projects offline on Windows 10+, macOS 10.13+, ChromeOS and Android 6.0+. The Windows direct download was paused on the date we checked, and the Microsoft Store version still works.
- MakeCode is cached in the browser after the first visit, and an offline app exists for Windows and Mac.
- Snap! can be installed as a progressive web app in Chrome, Edge, Safari on iOS and Firefox on Android.
- Blockly Games can be downloaded for offline use, and OctoStudio lets children create projects without an internet connection.
Accounts matter for privacy and for younger children. MakeCode says it does not require you to sign in; signing in with a Microsoft, Google or Clever account only adds cloud saving and sharing links. OctoStudio describes itself as ad-free and privacy protected. For any platform, read the privacy policy before a child creates an account or shares a project publicly.
Open source and licenses
Open source matters to schools that want to host a tool themselves or check what it does. Snap! is free software under the GNU Affero General Public License, Blockly Games publishes all its code as free and open source under Apache-2.0, MIT App Inventor's sources are on GitHub under Apache-2.0, and the MakeCode micro:bit editor is MIT licensed, built on the open source PXT project. The Scratch editor's code is on GitHub under AGPL-3.0.
CodeAI's curriculum and tutorials are licensed under Creative Commons and can be used, adapted and remixed for non-commercial purposes. That covers lesson materials, not a license to resell them.
What our tools add
Coding goes faster with a few side skills. The typing speed test shows when a child is ready for text coding, the number base converter turns binary and hexadecimal into numbers they know, and the random number generator is a good model for the dice and guessing games most beginners build first. All three run in the browser without an account.
Frequently asked questions
Which coding platform is best for children who cannot read yet?
ScratchJr. Its App Store listing names ages 5-7, and the Scratch Foundation says it was designed with pre-readers in mind, using icon-based blocks so children can start before they learn to read. The app is free on the App Store.
Is Scratch free?
Yes. The Scratch Foundation says Scratch is free for everyone, made possible by supporters. You can use it online at scratch.mit.edu or offline with the Scratch App on Windows, macOS, ChromeOS and Android.
Which platforms move from blocks to text code?
Blockly Games ends with levels that switch between blocks and actual JavaScript. MakeCode for micro:bit lets you program in Blocks or JavaScript and switch between them. Swift Playground teaches real Swift code from the start.
What happened to Code.org and the Hour of Code?
Code.org's own about page says Code.org became CodeAI and the Hour of Code became the Hour of AI. The site is still at code.org, and it says every CodeAI course, tool and activity is free to use.
Which kids coding platforms work offline?
The Scratch App, OctoStudio, Blockly Games, MakeCode and Snap! all state offline use on their official pages. MakeCode caches itself in the browser after the first visit, Snap! installs as a progressive web app, and Blockly Games can be downloaded.