Build Your Own Blocks

 Run Snap!
now 

 Snap! 5
beta 

What do you get if you combine

• drag-and-drop interface
• visual metaphors for loops,  
    conditionals, etc.
• easy animation tools
from Scratch
  +  
• first class procedures
• first class lists
• first class objects
• first class continuations  
from Scheme
  ?

 

You get a broadly inviting programming language for kids and adults that’s also a platform for serious study of computer science. (See the About page for details.)

Examples:


Animated tree

Path Finder

Space Invaders

Snake

Menuet

Interactive tree

Swimmer

Count change

Y combinator

Animal game

Joke

Roman numerals

Teachers, check out the Beauty and Joy of Computing, an AP CS Principles course using Snap!.
(AP CSP info for students; info for teachers)

Snap! 4.2.2.9 is the current version. Try out the language at https://snap.berkeley.edu/run (the button above).

Need help?Read the Reference Manual.
Manual updates:First class sprites
Tables
Linked lists
Block Enhancements
Still have a question?    Ask on our forum.
Found a bug?Report it at our Github repository.
Looking for BYOB3?    Download it here.


You can now run Snap! offline in your browser. Click the link for instructions.

Turn your project into a standalone executable!

First “Export project” and save the resulting XML file. Then go to http://snapp.citilab.eu/

Import Scratch 2.0 projects

Go to Snapin8r2

Use devices with Snap!:

More Snap! extensions for CS education

Mirror Sites

If snap.berkeley.edu is ever unavailable, you can run Snap! at any of these mirror sites: We recommend bookmarking these now, while this site is up!
Browser Requirements

Browser  Minimum  
Version
Required
Additional Notes
Chrome54Chrome is currently the recommended browser for Snap!
Safari10.1 
Firefox47 
Edge12 
Opera32 
IEnoneInternet Explorer will not work with any version.

For mobile browsers:

DeviceVersion Notes
iPhoneiOS 8 or higher. However on iOS, uploaded sound files can't be played in a script. (All iOS versions have this restriction.)
Android    Use Chrome for Android and not the stock browser that comes with some devices.

Privacy Notice

For research purposes, this site uses Google Analytics to collect aggregate information about, e.g., how often the site is used and what links are followed from it. We do not collect personally identifiable information, but if you have a Gmail account or have ever Googled yourself from your own computer, then, despite their assurances to the contrary, Google does collect such information. We recommend that you use AdBlock Plus, Ghostery, NoScript, and/or Privoxy to protect your browsing privacy. The first two are really easy to install and use; the last two take a bit more effort to whitelist sites you trust. (You might also consider the tracking-free DuckDuckGo search engine.)

See our complete privacy policy here.

Thanks to...

           

This material is based upon work supported by the National Science Foundation under Grants No. 1138596, 1143566, and 1441075. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation or other funders.

Site layout by towerofnix.