TouchDevelop is a programming language and IDE that allows users to create apps for mobile devices directly on those devices using touch or click inputs. It syncs projects to the cloud so they can be accessed across multiple devices. Templates are provided for games with built-in physics engines and sprite support. Users can publish their apps to various app stores and platforms. TouchDevelop is part of a progression of programming languages from visual block-based languages to traditional text-based languages.