Scratch è un ambiente grafico per la creazione di programmi, giochi e animazioni, che utilizza un sistema di impilamento di blocchi per facilitare l'apprendimento della programmazione. Gli utenti possono personalizzare sprite e utilizzare diverse categorie di blocchi per definire il comportamento degli stesso, lavorando in un'interfaccia suddivisa in tre aree principali. Scratch è disponibile sia online che come software scaricabile per utilizzo offline.