Digital Art

Technologies for creative and artistic purposes

ⓘ  This is a selection of open source tools suggested by Mediafutures mentors for the 1st Open Call. Participants are free to use these or other tools.

Learning to code for visual art - Processing


Flexible software sketchbook and a language for learning how to code within the context of the visual arts. It provides a free graphical library and integrated development environment (IDE) built for the electronic arts, new media art, and visual design communities with the purpose of teaching non-programmers the fundamentals of computer programming in a visual context. Processing uses the Java language, with additional simplifications.

Creative coding in C++ - OpenFrameworks


Community-developed cross platform toolkit for creative coding in C++. It provides simplified interface to powerful libraries for media, hardware and communication. Similar to Processing, but based on C++ instead of Java.

Visual programming for music and multimedia: PureData


Free real-time computer music system that enables musicians, visual artists, performers, researchers, and developers to create software graphically without writing lines of code. It can be used to process and generate sound, video, 2D/3D graphics, and interface sensors, input devices, and MIDI. It is suitable for learning basic multimedia processing and visual programming methods as well as for realizing complex systems for large-scale projects.

Real time video synthesis: vvvv


Hybrid visual/textual live-programming environment for easy prototyping and development. It facilitates real-time video synthesis and the handling of large media environments with physical interfaces, real-time motion graphics, audio and video that can interact with many users simultaneously.

Programming with aesthetic intent: Cinder


Community-developed, free and open source library for professional-quality creative coding with aesthetic intent to create in C++. It allows programming graphics, audio, video, networking, image processing and computational geometry. Cinder is cross-platform and supports different operating systems. It is comparable to OpenFramworks, but it uses more system-specific libraries for better performance, resulting in less control and transparency.

Machine learning in the creative process: Magenta


Open source research project exploring the role of machine learning as a tool in the creative process. Magenta features deep learning and reinforcement learning algorithms for generating songs, images, drawings, and other materials. It provides smart tools and interfaces that allow artists and musicians to extend their processes using these models.

Interactive visualizations: D3.js


A JavaScript library for producing dynamic, interactive data visualizations in web browsers. It combines powerful visualization components and a data-driven approach to manipulate documents. It makes use of Web standards, Scalable Vector Graphics, HTML5 and CSS.