Scratch es un lenguaje de programación visual desarrollado por el MIT Media Lab.
Scratch es utilizado por estudiantes, académicos, profesores y padres para crear fácilmente animaciones, juegos (también educativos) e interacciones etc.

Para las escuelas se convierte en una oportunidad para ayudar a los estudiantes en el desarrollo de habilidades mentales mediante el aprendizaje de la programación, sin necesidad de saber del programa. Sus características ligadas al pensamiento computacional han hecho que sea muy difundido actualmente en la educación de niños adolescentes y adultos.

Scratch es usado por estudiantes, escolares, profesores y padres para crear animaciones de forma sencilla y servir de trampolín hacia el más avanzado mundo de la programación. También puede usarse para un gran número de propósitos educativos construccionistas y de entretenimiento, como proyecto de ciencias o matemáticas, incluyendo simulación y visualización de experimentos, conferencias grabadas con presentaciones animadas, historias animadas de las ciencias sociales, arte interactivo, música, etc. Se pueden ver los diferentes proyectos existentes en la web de Scratch, modificarlos e incluso probarlos sin llegar a guardar los cambios, ya que no requiere ningún tipo de registro.

Scratch permite a los usuarios usar programación dirigida por eventos con múltiples objetos activos llamados sprites. ​ Los sprites pueden pintarse como gráficos vectoriales o mapa de bits, desde la propia web de Scratch usando un simple editor que es parte del proyecto, o pueden también importarse desde fuentes externas incluyendo webcams.