Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-creative-coding
Creative Coding: Generative Art, Data visualization, Interaction Design, Resources.
https://github.com/eric-erki/awesome-creative-coding
Last synced: 1 day ago
JSON representation
-
Books
- Learning Modern 3D Graphics Programming - Series of tutorials on using OpenGL to do graphical rendering.
- Graphics Shaders: Theory and Practice - Introduction to shader programming in general, but focusing on the GLSL shading language.
- Generative Art: A Practical Guide - Practical guide using Processing.
- Generative Design - Visualize, Program, and Create with Processing.
- Programming Design Systems - Practical introduction to the new foundations of graphic design.
- openFrameworks Essentials - openFrameworks beginner Guide for programmer, visual artist, or designer.
- Algorithms for Visual Design Using the Processing Language - Experiment with design problems to create 3D animations, GUIs, and more.
- Foundation HTML5 Animation with JavaScript - Everything you need to know to create animation using the HTML5 canvas.
- Playing with chaos - Programming Fractals and Strange Attractors in JavaScript.
- Real-Time Rendering - Learn how to use modern techniques to generate synthetic three-dimensional images in a fraction of a second.
- Physics for JavaScript Games, Animation, and Simulations - Teaches JavaScript programmers how to incorporate real physics into their HTML5 games, animations, and simulations.
- Math for Programmers - Book teaches you to solve mathematical problems in code.
- Ray Tracing in One Weekend - Mini book about Ray Tracing.
- Processing 2: Creative Programming Cookbook - Guides you to explore the Processing environment using practical and useful recipes.
- Generative Art: A Practical Guide - Practical guide using Processing.
- Data-driven Graphic Design - Creative Coding for Visual Communication.
-
Online Books
- Learn OpenGL - Extensive tutorial resource for learning Modern OpenGL.
- OpenGL Tutorial - Site dedicated to tutorials for OpenGL 3.3 and later.
- Open.gl - Guide that teach you the basics of using OpenGL.
- Pixel Shaders - Interactive Introduction to Graphics Programming.
- Graphics Programming Projects - Book about 3D computational graphics by Morgan McGuire.
- The Book of Shaders - Step-by-step guide through the abstract and complex universe of fragment shaders.
-
Tools
-
Visual Programming Languages
- Pure Data - platform] - Open source visual programming language for multimedia.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- vvvv - Hybrid visual/textual live-programming environment for easy prototyping and development.
- NodeBox - Cross-platform, node-based GUI for efficient data visualizations and generative design.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- tooll - Open source tool for creating interactive 3d content and animations.
- XOD - platform] - Open source visual programming language and environment for microcontroller-based projects.
- Synopsis - A suite of open source software for computational cinematography.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
- i-score - platform] - Interactive sequencer to control creative coding libraries and toolkits.
-
Frameworks • Libraries • Ecosystems
- HYPE - platform] - HYPE_processing, is a collection of classes that performs heavy lifting tasks while using a minimal amount of code writing.
- PixelKit - Open source, live graphics, Swift framework, powered by Metal.
- OPENRNDR - platform] - Open source library for creative coding written in Kotlin.
- Phaser - platform] - HTML5 framework for building games, uses both a Canvas and WebGL renderer.
- Cinder - platform] - Open source library for professional-quality creative coding in C++.
- Unity - Game engine, but useful for creative coding and installations.
- PlayCanvas - platform] - Open source, realtime collaborative WebGL engine.
- hg_sdf - platform] - GLSL library for building signed distance functions.
-
Online
- Shadershop - Interface for programming GPU shaders.
- Shadertoy - Build and share shaders with the world and get inspired.
- GLSLbin - Fragment shader sandbox with support for glslify.
- Shdr Editor - Online shader editor.
- Shadershop - Interface for programming GPU shaders.
- Vertexshaderart - Online shader editor and gallery.
- GlslEditor - Simple WebGL Fragment Shader Editor.
- P5.js Editor - Online web editor for P5.js.
- Turtletoy - Minimalistic API and online showcase for generative code. (Javascript)
- ShaderGif - Open source home for art made with code (WebGL1/2, JavaScript Canvas & P5.js).
- P5LIVE - p5.js live-coding environment.
- NEORT - Digital art platform for creative coders (Fragment Shader, Javascript Canvas).
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- CodePen - Show case of advanced techniques with editable source code.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
- Shadershop - Interface for programming GPU shaders.
-
Other
-
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.
- AxiDraw - Simple, modern, and precise pen plotter.
- Teensy - USB-based microcontroller development system.
- Tessel - Easy to use microcontroller that runs JavaScript.
-
Sound Programming Languages
- TidalCycles - Domain specific language for live coding of pattern.
- Csound - A sound and music computing system.
- Orca - Live coding environment to quickly create procedural sequencers.
-
Web Programming • Libraries
- Paper.js - The swiss army knife of vector graphics scripting.
- p5.js - JavaScript library that starts with the original goal of Processing.
- Pts.js - JavaScript library for visualization and creative-coding.
- Fabric.js - Javascript canvas library, SVG-to-canvas parser.
- OpenJSCAD - Programmatic 3D modeling in JavaScript.
- Two.js - Two-dimensional drawing api geared towards modern web browsers.
- ClayGL - WebGL graphic library for building scalable Web3D applications.
- css-doodle - A web component for drawing patterns with CSS.
-
Projection Mapping • VJing
-
-
Courses
- Create 3D Graphics in JS Using WebGL - Get started creating content with WebGL without any frameworks.
- Learn HTML5 Graphics and Animation - Introduction to the canvas 2D drawing API.
- Interactive Computer Graphics - Computer graphics course from Coursera.
- Kadenze Creative Coding - Selection of Kadenze courses covering p5.js, TensorFlow, Max/Jitter, and ChucK.
- Think. Create. Code - EDX course to learn programming with ProcessingJS.
- Creative Programming for Digital Media & Mobile Apps - Coursera course on creative coding with processing.
- Imaginary Institute - Learn how to create gorgeous interactive graphics.
- Future Learn: Creative Coding - Use computer programming as a creative discipline to generate sounds, images, animations and more.
- Intro to JS: Drawing & Animation - Use JavaScript and the ProcessingJS library to create drawings and animations.
- Advanced JS: Natural Simulations - Combine JS, ProcessingJS, and mathematical concepts to simulate nature in your programs
- Interactive Data Visualization with Processing - Learn how to read, map, and illustrate data with Processing.
- Programming Data Visualizations: A Coding Toolkit for Processing - Join information designer Nicholas Felton in the world of Processing.
- Introduction to Data Visualization - Join Nicholas Felton for a smart, comprehensive, and inspiring intro to data visualization.
- Programming Graphics I - Graphics-II-Generative-Art-Animation/388564917), [3](https://www.skillshare.com/classes/Programming-Graphics-III-Painting-with-Sound/738981508?) - Learn generative art and Processing with art with Joshua Davis.
- Creative Coding with Canvas & WebGL - Workshop by Matt DesLauriers. that teaches you about generative art, interactive animations, 3D graphics, and shaders.
-
Learning Resources
-
Talks
- Inigo Quilez Live - Collection of live coding videos by Íñigo Quílez.
- There is also canvas - Bruno Imbrizi go through the use of canvas for creative coding at WebExpo 2016. Interactive slides [here](https://brunoimbrizi.github.io/webexpo-2016/dist/).
- Draw. Move. Fail. Repeat. - Slides by [@williamapan](https://twitter.com/williamapan) from his Creative developer workshop at Gobelins.
- How We Do This Shit - Talk on how tech-based artists do this financially.
- Poetic Computation - Inspiring talk by Zach Lieberman.
- Generative Machines - FITC talk by Matt DesLauriers about his passion for generative art.
- Intro to WebGL Slides - Intro to WebGL with three.js.
-
Quick References • Cheatsheets
- OpenGL Shading Language - Khronos Group GLSL wiki.
- OpenGL 4.3 Reference Card - PDF Reference Card for the OpenGL 4.3 API.
- The newbie's PBR Cheat Sheet - Short and sweet visual overview on PBR.
- PixelSpirit - GLSL library on the back of tarot cards, for learning and reference.
- The Book of Shaders Glossary - Shader glossary by theme.
- gltut glossary pages: 1 - OpenGL 3D programming glossary.
- Procedural Patterns And Noises - Collection of procedural patterns and procedural noises.
- Three.js Reference - Reference from the Udacity Interactive 3D Graphics course.
- Visual Noises - Visualize noise algorithms in 1D and 2D.
- Trigonoparty - Simple trigonometry visualisation.
- Canvas Cheatsheet - Quick and visual canvas cheatsheet.
- WebGL Cheatsheet - WebGL 1.0 API reference card.
- Glossary of Computer Graphics - Glossary of terms relating computer graphics.
- GLSL Reference Guide - OpenGL Shading Language quick reference guide.
- docs.GL - Improvement of the official OpenGL documentation.
-
Interactive
- SDF Tutorial 1: box & balloon - Shadertoy tutorial on raytracing.
- HOWTO: Ray Marching - Shadertoy tutorial on Ray Marching.
- Raymarch Tutorial2 - Shadertoy raymarch tutorial.
- GLSL 2D Tutorials - Shadertoy GLSL 2D Tutorial.
- Let's Make A Ray Marcher - Interactive Shader-Toy on writing a ray marcher.
- Raymarching - Interactive Shader-Toy raymarching tutorial.
-
Articles • Tutorials
- Introduction to shaders - Part 1 of an introduction to shaders using threejs.
- Three.js 101 - Introduction to three.js from a creative coder perspective.
- Experimenting with Three.js shaders and the ShaderMaterial - Introduction to custom mesh shader materials.
- lwjgl: Shaders - Shader tutorial in the context of lwjgl-basics.
- Shaders: A primer - A primer on shaders.
- Shaders: Second stage - The second part to the previous.
- Ray Marching and Signed Distance Functions - Introduction to ray tracing.
- FBO particles - Article about FBO/GPGPU particles by @nicoptere.
- Ray marching (with THREE.js) - Article about ray marching with three.js by @nicoptere.
- Custom shaders with Three.JS - Introduction to custom shaders, uniforms, textures and lighting in three.js.
- Sun and Black Cat - Articles on shaders and other computer graphics related topics.
- WebGL Tutorials - Website with a really good collection of WebGL tutorials.
- Generating Geometry: 1 - geometry-part-2-going-3d), [3](http://codepen.io/mcdorli/post/generating-geometry-part-3-getting-spherical) - Beginner introduction on how to create geometry object.
- Three.js sine animation - Learn how to add sine waves to a circle with three.js. ([oF version](http://www.pshkvsky.com/gif2code/sinewaves-animation-tutorial-openframeworks/))
- Into Vertex Shaders - Series of tutorials about WebGL, Three.js, and Three.bas.
- The Spaces of WebGL - Brief overview over the different coordinate systems through out the 3D graphics pipeline.
- WebGL Workshop - Short and sweet online introduction to WebGL.
- THREE.js & instanced geometry - Fluffy predator with three.js and instanced geometry.
- Beautifully Animate Points with WebGL and regl - How to create GPGPU particles with regl.
- Particles in a Simplex Noise Flow Field - Perlin noise flow field tutorial.
- Flow Fields, Part 1 - 101.com/blog/2017/10/28/flow-fields-part-ii/) - Introduction to flow fields also known as vector fields.
- Graphics for Games - Introduction to 3D graphics programming including shaders, math post-processing etc. from Newcastle University.
- An Interactive Introduction to WebGL and three.js - Slides from the SIGGRAPH 2017 WebGL workshop.
- How to Start Learning Computer Graphics Programming - Advice and thoughts on how to get started by Eric Arnebäck.
- HTML Canvas Deep Dive - Profound introduction to the canvas API.
- 31 days of Canvas tutorials - Collection of canvas tutorials by Seb Lee-Delisle.
- Pen Plotter Art & Algorithms Part 1 - plotter-2) - How to use the AxiDraw pen plotter with JavaScript.
- COSMOS - An end-to-end tutorial on the design, programming and launch of an app using C4.
- Particle Physics - Particle physics explained.
- Visualizing Algorithms - Looks at the use of visualization to understand, explain and debug algorithms.
- Shepherding random numbers - Tiny guide to shepherding random numbers.
- Amit’s Game Programming Information - Collection of resources on stuff like path-finding, Ai, math etc.
- Smooth minimum - Article about the smooth based primitive union.
- Modeling with distance functions - Collection of distance functions in one centralized place.
- Tips to Improve Your Generative Artwork - Tips to make your art look better.
- Working With Color in Generative Art - Tips on how to get color right.
- Generating Geometry: 1 - geometry-part-2-going-3d), [3](http://codepen.io/mcdorli/post/generating-geometry-part-3-getting-spherical) - Beginner introduction on how to create geometry object.
-
Videos
- Modern OpenGL 3.0+ Tutorials - YouTube playlist about modern OpenGL.
-
-
Math
-
Other
- Algebra rules - The most useful rules of basic algebra.
- Immersive Math - Fully interactive linear algebra.
- Formul Animations - The principles of painting with maths.
- Math for Motion - Visualization of different motion equations.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Perlin Noise - Perlin noise explained in detail.
- Vector Math for 3D Computer Graphics - Tutorial on vector algebra and matrix algebra from the viewpoint of computer graphics.
- Desmos - Graph functions, plot data, evaluate equations, explore transformations, and much more.
- Sketching with Math and Quasi Physics - Beautiful and visual introduction to math and quasi physics.
- Matrix Math and You - High level introduction to matrices.
- Maths & trigonometry cheat sheet for 2D & 3D games - Maths cheat-sheet for 2D and 3D game-makers.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Making Things With Maths - Talk by Steven Wittens about bezier curves, procedural generation, physics engines and fractals.
- MyPhysicsLab - Interactive real-time physics simulations, with formulars and code.
- Intuitive Math - Explanations of fields like Linear Algebra and Geometry designed to help you develop a visual intuition for what is going on.
- Linear Interpolation - Introduction to linear interpolation (also known as mix/lerp).
- Practical use of Vector Math in Games - In-depth article on vectors for game math.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
- Tiny 3D - The smallest possible perspective engine on a 2D canvas.
-
-
Communities
-
Other
- realtimevfx.com - Real Time VFX Community.
- Pass The Pen - A community of front-end developers who build collaborative creative coding projects on CodePen.
-
Subreddits
- r/creativecoding - Sharing and discussing the use of computer programming as a creative discipline.
- r/raytraycing - Subreddit on raytracing.
- r/opengl - News and discussion about OpenGL on all platforms.
- r/graphicsprogramming - Subreddit on graphics programming.
- r/processing - Subreddit on Processing.
- r/shaders - Subreddit on shaders.
- r/proceduralgeneration - Subreddit on procedural generation.
- r/MachineLearning - Subreddit on machine learning.
-
Slack
- Creative-Dev Slack - Creative Development Slack.
- Generative Art Slack - Generative Art Slack.
- Creative Coding - Creative Coding Slack.
- openFrameworks - openFrameworks Slack.
-
-
Machine learning • Computer Vision • Ai
-
Other
- ml4a - Machine learning for artists.
- Tesseract.js - Pure Javascript Multilingual OCR.
- TensorFlow - Open source software library for machine intelligence.
- ConvNetJS - Deep Learning in your browser.
- Wekinator - Allows anyone to use machine learning.
- CreativeAi.net - Space to share creative Ai projects.
- Hello TensorFlow - Fully commented TensorFlow.js demo.
- ml5.js - Friendly machine learning for the web.
- Model Zoo - Discover open source deep learning code and pretrained models.
- ModelDepot - Platform for discovering, sharing, and discussing easy to use and pre-trained machine learning models.
- TensorFlow.js - JavaScript library for training and deploying ML models in the browser and on Node.js.
-
-
Inspiration
-
Other
- Dwitter - Social network for short JavaScript demos.
- Inspiring Online - Open source micro blog about inspiring and creative works published online.
- Raven Kwok - Tumblr by visual artist Raven Kwok.
- Bees & Bombs - Tumblr with gifs by Dave.
- W:BLUT Inspiration - Collection of gifs, links and images by W:Blut.
-
-
Events
-
Other
- Eyeo Festival - Bring together creative coders, data designers and creators working at the intersection of data, art and technology.
- Node - An open platform for the exchange on culture, arts and technology.
- Curated Creative Events - Hand-picked design, code, art, fashion and maker events.
- NextArt Night - Inspiring people through creative uses of tech.
- GROW - The Parisian rendez-vous for creative coders, GROW is about opening new possibilities in digital creation.
-
-
Museums • Galleries
-
Other
- Technorama, Zurich/Switzerland - Technorama allows hands-on experiences of hundreds of natural phenomena and technology.
-
-
Schools • Workshops
-
Other
- School for Poetic Computation - School in New York that explore the intersections of code, design, hardware and theory.
- Residencies, Fellowships, Summer Schools - Huge list of residencies, fellowships and summer schools around the world (Navigate with the bottom left tabs).
-
-
Blogs • Websites
-
Other
- bit-101.com - Blog by Keith Peters, specialised in creative coding.
- adriancourrèges.com - Blog of software engineer Adrian Courrèges. Articles about game graphics studies etc.
- syntopia - Blog about generative art and systems, by Mikael Hvidtfeldt Christensen.
- songho.ca - Home of Song Ho Ahn, with a good collection of tutorials on OpenGL and math.
- simonschreibt.de - Game art tricks, design tricks by Simon schreibt.
- sighack.com - Blog about generative art algorithms and techniques, by Manohar Vanga.
-
-
Related
-
Other
- Awesome opengl - Curated list of awesome OpenGL libraries, debuggers and resources.
- Awesome webgl - Curated list of awesome WebGL libraries, resources and much more.
- Awesome canvas - Curated list of awesome HTML5 canvas with examples, related articles and posts.
- Awesome audio visualization - Curated list about Audio Visualization.
- Awesome computer vision - Curated list of awesome computer vision resources.
- Magic tools - Curated list of game development resources to make magic happen.
- Link collection of ray marching on the GPU - Curated list from 2013.
-
Programming Languages
Categories
Sub Categories
Keywords
awesome
4
awesome-list
4
opengl
2
game-development
2
glsl-editors
2
list
2
webgl-tutorials
1
webgl-spec-sheet
1
webgl-references
1
webgl-programming
1
webgl-articles
1
webgl
1
learning-webgl
1
video-tutorial
1
opengl-tutorial
1
opengl-library
1
lists
1
graphics-pipeline
1
computer-graphics
1
games
1
gamedev
1
game-programming
1
game-jam
1
game-engine
1
game-design
1
frameworks
1
design
1
curated
1
board-games
1
art
1
particles
1
javascript
1
html5-canvas
1
draw-graphics
1
canvas2d
1
canvas-element
1
awesome-canvas
1
tutorial
1