/awesome-creative-coding

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

Primary LanguageHTML

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. 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

Online 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.
  • PlayCanvas [Cross-platform] - Open source, realtime collaborative WebGL engine.
  • 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.
  • i-score [Cross-platform] - Interactive sequencer to control creative coding libraries and toolkits.
  • tooll [Win] - Open source tool for creating interactive 3d content and animations.
  • XOD [Cross-platform] - Open source visual programming language and environment for microcontroller-based projects.
  • Isadora [Cross-platform] - Scene based media control software with integrated projection mapper.

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.
  • Maker.js - Parametric line drawing for SVG, CNC & laser cutters.
  • OpenJSCAD - Programmatic 3D modeling in JavaScript.
  • Sketch.js - Minimal JavaScript creative coding framework.
  • Two.js - Two-dimensional drawing api geared towards modern web browsers.
  • ClayGL - WebGL graphic library for building scalable Web3D applications.

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.
  • Vertexshaderart - Online shader editor and gallery.
  • Cyos - Online shader editor.
  • GlslEditor - Simple WebGL Fragment Shader Editor.
  • OpenProcessing - Create and experiment with algorithmic design, Processing and P5.js.

Hardware

  • Arduino - Open source microcontroller kits for building digital devices and interactive objects.
  • Raspberry Pi - Small single-board computers.
  • 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.
  • AxiDraw - Simple, modern, and precise pen plotter.

Other

  • Structure Synth [Cross-platform] - Application for generating 3D structures by specifying a design grammar.
  • 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.
  • KodeLife - Real-time GPU shader editor, live-code performance tool and graphics prototyping sketchpad.
  • ISF - GLSL shaders for use in interactive applications.
  • glslViewer - Live-coding console tool that renders GLSL Shaders.
  • DrawBot [Mac] - Education oriented 2d graphics programming environment based on python.
  • Klak - A collection of scripts for creative coding with Unity.

Learning Resources

Videos

Talks

Articles • Tutorials

Shaders • OpenGL • WebGL

Canvas

Hardware

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.
  • CreativeAi.net - Space to share creative Ai projects.
  • AI Playbook - Ai microsite intended to help newcomers get started.
  • Teachable Machine - Explore how machine learning works, live in the browser.

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.
  • Digital Design Days - OFFF - 3 day event offering conferences, workshops, digital showcases & installations.
  • CODAME ART+TECH - Projects and nonprofit events, to inspire through experience.
  • Curated Creative Events - Hand-picked design, code, art, fashion and maker events.
  • NextArt Night - Inspiring people through creative uses of tech.

Schools • Workshops

Blogs • Websites

Related

License

CC0

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