
Snap!
Free browser-based block programming language from UC Berkeley that extends Scratch with custom blocks.
Updated · AppBreakup editorial · Web
Is Snap! free?
Yes, free and open source
- License:
- AGPL-3.0
Checked on Snap!'s site Oct 29, 2026
Switch from Snap! to
All 4
ScratchFree

Swift PlaygroundFree
- Verified facts
- 5 of 5
- Alternatives ranked
- 4
- Approved reviews
- 0
- Visits sent from here
- 0
About Snap!
Snap! (formerly BYOB, for Build Your Own Blocks) is a drag-and-drop visual programming language that looks and works much like Scratch but goes further. You can define your own blocks, treat lists, procedures and even continuations as values, and write higher-order functions, which makes it suitable for serious introductory computer science in high school or university, including UC Berkeley's Beauty and Joy of Computing course. It runs entirely in the browser, can be installed as a progressive web app for offline use, and saves projects to a free cloud account or as files. It's developed by Jens Mönig at SAP with UC Berkeley, is open source under the AGPL-3.0, and costs nothing. The trade-off is a smaller community and fewer beginner tutorials than Scratch, and the interface isn't optimised for touchscreens.
Best for: Older students and teachers who've outgrown Scratch and want real computer science concepts in blocks.
Pros and cons
What works
- Build your own blocks and use first-class lists and functions
- Runs in any modern browser, offline as a PWA
- Free and open source, used in university courses
Why people leave
- Smaller community and fewer kid-friendly tutorials than Scratch
- Interface isn't optimised for tablets
- No native desktop or mobile app
Snap! vs Scratch, CodeAI (formerly Code.org) and Swift Playground
From each app's listing and the prices verified on its own site. A dash means we haven't verified it yet.
| Attribute | Snap! | Scratch | CodeAI (formerly Code.org) | Swift Playground |
|---|---|---|---|---|
| Pricing | Open source | Free | Free | Free |
| Verified price | — | — | — | — |
| Free plan | Free app | Free app | Free app | Free app |
| Open source | Yes | Yes | No | No |
| Self-hostable | No | No | No | No |
| Platforms | Web | Web, Windows, macOS, Android | Web | iOS, macOS |
Top Snap! alternatives
See all 4- 1
Scratch68.8Simpler blocks and a far larger community, better for younger beginners.
- 2
CodeAI (formerly Code.org)64.8Free block-based courses with teacher lesson plans, and App Lab to move students from blocks to JavaScript.
- 3
Swift Playground59.4Apple's free iPad and Mac app that teaches real Swift code through puzzles, for learners ready to move past blocks.
- 4
p5.js52.6Free JavaScript library for creative coding in the browser, a natural next step when Snap! students are ready for text code.
Why people left Snap!
In reviewers' own words, from reviews of the apps they moved to. These are their opinions, not ours.
No switching stories yet. If you moved away from Snap!, review the app you switched to and tell us why.
Reviews
No approved reviews yet. How we verify reviewers
Write a review of Snap!
Snap!: common questions
What is Snap!?
Snap!: Free browser-based block programming language from UC Berkeley that extends Scratch with custom blocks. Best for older students and teachers who've outgrown Scratch and want real computer science concepts in blocks. Available for Web.
Is Snap! free?
Yes. Snap! is free, open-source software.
Is Snap! open source?
Yes. The source code is on GitHub at jmoenig/Snap.
What platforms does Snap! run on?
Snap! is available for Web.
What are the best alternatives to Snap!?
The highest-ranked Snap! alternatives right now are Scratch, CodeAI (formerly Code.org) and Swift Playground. See the full ranked list for pricing, platforms and verified facts.
Snap! vs Scratch: what's the difference?
Snap! is free and open source; Scratch is free to use. Only Scratch runs on Windows, macOS and Android.