Terms of Service

Welcome to the Snap! user community!

Snap! is a visual computer programming language targeted mainly at users ages 12-20, although everyone is welcome here. Its design is deeply inspired by Scratch, a pioneering language and programming community for an overlapping but somewhat younger range of users, from the Lifelong Kindergarten Group at the MIT Media Lab.

Snap! is provided by the University of California, Berkeley, with funding from the National Science Foundation, the MioSoft Corporation and SAP.

Our goal is to foster a friendly, welcoming, safe community of Snap! users. These Terms of Service have that goal in mind.

Use of the software

Snap! is free software. It is licensed under the GNU Affero General Public License, which permits unlimited use for any purpose by anyone, but does not allow proprietary modified versions of the software; if you make a modified version of Snap!, you must make it available under the same terms as our version, including the provision of source code.

(To download the Snap! source code, download or clone our Github repo.)

You do not have to have a user account or provide any personal information to use Snap!. (See our privacy policy for more details).

You may not attempt to disrupt other people's use of this site, whether by denial of service attacks, accessing private data, or any other means. If you want to prove how clever you are, go pick on the CIA.

Private use of our cloud storage

If you create an account on this site, you can store your Snap! projects on our cloud server. You can save projects privately, just for your own use, or you can share them publicly for any other user of our site to see.

We will not examine the contents of any project you store privately. We believe that such private storage is not legally "publication" and that you are not breaking any laws by using copyrighted material in private projects. But we're not lawyers, and this is not legal advice.

We may establish limits on the total amount of storage you may use on our server. Also, our server is provided for the purpose of programming in Snap!; you may not store media (e.g., your entire music library) not intended for use in programming projects.

Public posting of projects

We provide two levels of publication of projects: sharing and publishing. When you share a project, you are given a URL that you can give to your friends or your teacher that will open your project, but the project is not included in this public web site. When you publish a project, it will be shown on our web site; your user page lists all your published projects, and your project may also appear on the front page of the site. Publishing includes sharing; that is, when you publish a project you also get a URL that links directly to your project.

Hereafter in this document, we use "share" to include both sharing and publishing. Both are considered "publication" legally.

If you share projects publicly, then you must abide by additional rules:

Anything you share is available to other users for any purpose, including the sharing of modified versions of your projects. By sharing a project, you are agreeing to license it under the Creative Commons Attribution-NonCommercial-ShareAlike License. (Fine print: If you want your project to be considered "free software" then you should waive the "NonCommercial" part of the license, but we do not impose this choice on you). This license also applies to any media (images, sounds, etc). you share on this site.

If you do use someone else's work in creating your project, you should give them credit for it, in your project notes.

Our community includes children, and people of all cultures, religions, political views, and so on. You may not share anything that could reasonably be considered offensive to others. We reserve the right to revoke the shared status of anything that, in our sole judgment, is offensive to our community standards. (There is a fine line between the free expression of ideas, which we encourage, and offensiveness, which we don't. You can argue with us through our contact page, but by using this site you agree that our judgment is final). In case of repeated violations, we may remove your account entirely.

In particular, you may not share anything that is illegal in the United States of America, where our servers are located, including pornography and hate speech as defined by US law.

Also in particular, you may not share anything that insults or attacks other users of the site. Put yourself in the other person's shoes before you post any comments about anyone else. Criticism of a project is not the same as a personal attack, but even in a critique of a project, remember that its author is a person, probably a young person. Swear words are prohibited.

You may not share any material copyrighted by someone else. We are required by law to remove any such material if we are given proper notice under the terms of the Digital Millennium Copyright Act. (See here to notify us of a violation).

Finally, please do not share any personally identifiable information (such as your name, address, birthday, etc). in your projects.

No Liability

BY USING THIS SITE OR THE Snap! SOFTWARE, YOU AGREE THAT THE UNIVERSITY OF CALIFORNIA DOES NOT PROVIDE ANY WARRANTY WHATSOEVER, since the services are provided at no cost. This includes the possibility of damage to your computer.

(We do not think that there is any significant chance of damage to your computer, including its software and data outside of your Snap! projects, even if you download other people's shared projects. Snap! is implemented within your browser using Javascript, which was designed with security restrictions on what any Javascript program, including Snap!, can do. Most web sites use Javascript, and if a security hole should ever turn up in Javascript, the bad guys will attack popular sites such as cnn.com or google.com long before they get around to us. Still, if there's ever a problem with Javascript, it won't be under our control and we can't take responsibility for it. Note: Despite the name, Javascript is unrelated to Java, which has had security problems, but is not used by our site).

A less severe but more likely problem is that if you program in Snap! from a mobile device using a cellular network, you may run over your data plan's limit and incur large usage fees from your carrier. We're not responsible for that, either. Get on a Wifi network before you start programming!