Catrobat is a visual programming language and set of creativity tools for smartphones, tablets, and mobile browsers.
Through Catrobat, we promote computational thinking skills as well as the free and open source software philosophy in a fun and engaging way among children and teenagers on a worldwide scale.
Catrobat and the software developed by the Catrobat team are inspired by the Scratch programming system developed by the Lifelong Kindergarten Group at the MIT Media Lab. Catrobat itself is an independent free and open source software (FOSS) project.
Pocket Code allows to create and execute Catrobat programs on Android, iOS, and Windows Phone 8 smartphones as well as on HTML5 capable mobile browsers. Some Blackberry devices can execute Android apps, and Pocket Code seems to run well on them, but Blackberry devices are not actively supported by us at the moment. Catrobat programs written on one platform will be directly executable on all other platforms as well and can be shared via a the Pocket Code community website. The Android version of Pocket Code can be found on Google Play. It currently works well on devices up to 7". The iOS, Windows Phone 8, and HTML5 versions are still closed alpha. Please find some videos below.
Pocket Paint is a fully fledged image editor companion app to Pocket Code that, among others, allows setting parts of pictures to transparent and zooming in up to pixel level. It is integrated into Pocket Code but can also be used on its own. The Android version of Pocket Paint can be found on Google Play.
Pocket Code users can up- and download Catrobat programs to the Pocket Code community website. Uploaded Catrobat programs are AGPLed to allow learning, remixing, and sharing them freely.
See this YouTube video for some sample applications that can be made with the public Android versions of the Catrobat tools. Find more videos of other Catrobat subprojects in the list below.
We are striving to develop our software in an uncompromising Test-Driven way (even for the hardware parts) along with other agile methods such as Ping-Pong-Pair-Programming, Collective Code Ownership, Continuous Integration, Robert C. Martin's Clean Code method, plus several others such as Simple Design, altogether aiming at ensuring a clear, believably correct, and 100% up-to-date documentation as well as high quality code. We recently started to use Specification by Example (also called Behaviour Driven Development) to ensure that the natively implemented interpreters execute Catrobat programs in exactly the same way on all supported platforms.
Currently under development but still in alpha stage: