Skip to content

🎨 Creative Coding: Generative Art, Data visualization, Interaction Design, Resources.

Notifications You must be signed in to change notification settings

liamwalsh/awesome-creative-coding

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Creative Coding Awesome

Carefully curated list of awesome creative coding resources primarily for beginners/intermediates.

Creative coding is a different discipline than programming systems in which the goal is to create something expressive instead of something functional. Interaction design, information visualization and generative art are all different types of creative coding – which has become a household term describing artworks articulated as code.

You might also like Graphics resources and Awesome OpenGL.

Please read the contribution guidelines before contributing.


Contents

Books

Courses

Tools

Frameworks • Libraries • Ecosystems

  • Processing [Cross-platform] - Computer programming language and IDE for visual arts.
  • Cinder [Cross-platform] - Open source library for professional-quality creative coding in C++.
  • openFrameworks [Cross-platform] - Open source C++ toolkit for creative coding.
  • C4 [iOS] - Open-source creative coding framework for iOS.
  • Unity [Mac, Win] - Game engine, but useful for creative coding and installations.
  • hg_sdf [Cross-platform] - GLSL library for building signed distance functions.

Visual Programming Languages

  • vvvv [Mac, Win] - Hybrid visual/textual live-programming environment for easy prototyping and development.
  • NodeBox [Mac, Win] - Cross-platform, node-based GUI for efficient data visualizations and generative design.
  • TouchDesigner [Mac, Win] - Visual development platform to create realtime projects.
  • Quartz Composer [Mac] - Development tool for processing and rendering graphical data.
  • Vuo [Mac] - Live interactive-media programming environment.
  • Max [Mac, Win] - Visual programming language for media.
  • Pure Data [Cross-platform] - Open source visual programming language for multimedia.

Sound Programming Languages

  • SuperCollider [Multi-platform] - Platform for audio synthesis and algorithmic composition.
  • ChucK - Strongly-timed, concurrent, and on-the-fly music programming language.
  • TidalCycles - Domain specific language for live coding of pattern.
  • Sonic Pi - The live coding music synth for everyone.

Web Programming • Libraries

  • three.js - JavaScript 3D library.
  • regl - Functional WebGL.
  • Stackgl - Open software ecosystem for WebGL, built on top of browserify and npm.
  • Paper.js - The swiss army knife of vector graphics scripting.
  • Pixi.js - HTML 5 2D rendering engine that uses webGL with canvas fallback.
  • p5.js - JavaScript library that starts with the original goal of Processing.
  • Fabric.js - Javascript canvas library, SVG-to-canvas parser.
  • Sketch.js - Minimal JavaScript creative coding framework.
  • Two.js - Two-dimensional drawing api geared towards modern web browsers.

Projection Mapping • VJing

  • MadMapper [Mac] - Video mapping projections and Light mapping.
  • VDMX [Mac] - Realtime multimedia performance application.
  • Modul8 [Mac] - Real time video mixing and compositing.
  • Resolume [Mac, Win] - Mixing of digital video and effects in a realtime.
  • CoGe VJ [Mac] - VJ software designed for realtime HD video mixing and compositing with a modular user interface.
  • VirtualMapper - Realtime preview tool for projection mapping.

Online

  • Shadertoy - Build and share shaders with the world and get inspired.
  • GLSLbin - Fragment shader sandbox with support for glslify.
  • GLSL Sandbox - Online shader editor and gallery.
  • Shdr Editor - Online shader editor.
  • CodePen - Show case of advanced techniques with editable source code.
  • Shadershop - Interface for programming GPU shaders.

Hardware

  • Arduino - Open source microcontroller kits for building digital devices and interactive objects.
  • Raspberry Pi - Small single-board computers.
  • Intel Edison - Computer-on-module offered by Intel as a development system for wearables and Internet of Things devices.
  • Puck.js - Open source JavaScript microcontroller you can program wirelessly.
  • BeagleBoard - Low-power open source single-board computers.
  • Makey Makey - Turn everyday objects into touchpads and combine them with the internet.
  • Tessel - Easy to use microcontroller that runs JavaScript.
  • Leap Motion - Sensor device that supports hand and finger motions as input.

Other

  • Structure Synth [Cross-platform] - Application for generating 3D structures by specifying a design grammar.
  • i-score [Cross-platform] - Interactive sequencer to control creative coding libraries and toolkits.
  • F3 [Mac] - Powerful 3D design app that enables you to live code 3D form.
  • Fragment [Mac]- App to live code GLSL graphics.
  • ShaderTool [Win] - Modern shader IDE for programmers and FX artists.
  • Syphon [Mac] - Allows applications to share frames with one another in realtime.

Learning Resources

Videos

Talks

Articles • Tutorials

Shaders • OpenGL • WebGL

Canvas

Other

Interactive

Quick References • Cheatsheets

Communities

Subreddits

Slack

Other

Math

Machine learning • Computer Vision • Ai

  • ml4a - Machine learning for artists.
  • Keras.js - Run Keras models (tensorflow backend) in the browser, with GPU support.
  • Tesseract.js - Pure Javascript Multilingual OCR.
  • Google ML - Cloud machine learning by Google.
  • TensorFlow - Open source software library for machine intelligence.
  • ConvNetJS - Deep Learning in your browser.
  • Wekinator - Allows anyone to use machine learning.
  • Machine Learning - Coding Train repo with links to machine learning resources.

Inspiration

Events

  • OFFF Festival - Digital design festival (Online Flash Film Festival).
  • Resonate - Festical in Belgrade about cutting edge music, visual arts and digital culture.
  • Gray Area Festival - Creative coding, art and technology festival.
  • Signal Festival - Showcase of light art and emerging technologies in Prague, the Czech Republic.
  • Eyeo Festival - Bring together creative coders, data designers and creators working at the intersection of data, art and technology.
  • Mutek - Organization dedicated to digital creativity in sound, music, and audio-visual art.
  • Node - An open platform for the exchange on culture, arts and technology.

Blogs • Websites

  • abandonedart.org - Generative art blog by Matt Pearso. Good for inspiration.
  • iquilezles.org - Home of Íñigo QuĂ­lez, specialised in GLSL and math snippets.
  • bit-101.com - Blog by Keith Peters, specialised in creative coding.
  • IBreakDownShaders - Explore the math behind shaders.
  • Adrian Courrèges - Blog of software engineer Adrian Courrèges. Articles about game graphics studies etc.
  • Click to Release - Home of Jaume Sanchez Elias, with demos, talks, articles on WebGL and WebVR.

Related

License

CC0

To the extent possible under law, Terkel Gjervig has waived all copyright and related or neighboring rights to this work.

About

🎨 Creative Coding: Generative Art, Data visualization, Interaction Design, Resources.

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published