Snap! is a block-based programming language (similar to Scratch) that is designed for learners and for more serious computer science study. It runs in the browser and supports building interactive stories, simulations, and games while introducing core CS ideas like abstraction, procedures, and data.

Link to Tool

What it is (at a glance)

Student Examples

Tutorials and Lessons

<aside> 💡

Classroom tip: Have students remix an example project first, then require a “feature add” list (new mechanic, new level, scoring, sound, or accessibility improvements). This reinforces reading code and iterative design.

</aside>

Notes for Secondary CS