{"id":582,"url":"https://github.com/terkelg/awesome-creative-coding","last_synced_at":"2025-09-27T07:30:27.358Z","repository":{"id":37548629,"uuid":"72586805","full_name":"terkelg/awesome-creative-coding","owner":"terkelg","description":"Creative Coding: Generative Art, Data visualization, Interaction Design, Resources.","archived":false,"fork":false,"pushed_at":"2025-06-16T16:37:13.000Z","size":573,"stargazers_count":13923,"open_issues_count":4,"forks_count":918,"subscribers_count":394,"default_branch":"main","last_synced_at":"2025-09-12T01:40:08.955Z","etag":null,"topics":["3d-graphics","art","awesome","awesome-list","computer-graphics","creative-coding","data-visualization","design","generative-art","graphics-programming","information-visualization","interaction-design","list","programming-graphics","resources","shaders","webgl"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/terkelg.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"contributing.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-11-01T23:50:27.000Z","updated_at":"2025-09-12T01:39:57.000Z","dependencies_parsed_at":"2023-02-16T12:15:34.504Z","dependency_job_id":"7fcbee3a-2835-4217-b8e0-6fc2f5649389","html_url":"https://github.com/terkelg/awesome-creative-coding","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/terkelg/awesome-creative-coding","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terkelg%2Fawesome-creative-coding","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terkelg%2Fawesome-creative-coding/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terkelg%2Fawesome-creative-coding/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terkelg%2Fawesome-creative-coding/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/terkelg","download_url":"https://codeload.github.com/terkelg/awesome-creative-coding/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terkelg%2Fawesome-creative-coding/sbom","scorecard":{"id":874381,"data":{"date":"2025-08-11","repo":{"name":"github.com/terkelg/awesome-creative-coding","commit":"cdf66841201f14c10e2674f4a806e23f64d3857b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.8,"checks":[{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Code-Review","score":7,"reason":"Found 23/30 approved changesets -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"1 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/links.yml:1","Warn: no topLevel permission defined: .github/workflows/stale.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/links.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/terkelg/awesome-creative-coding/links.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/links.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/terkelg/awesome-creative-coding/links.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/stale.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/terkelg/awesome-creative-coding/stale.yml/main?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-24T05:25:07.759Z","repository_id":37548629,"created_at":"2025-08-24T05:25:07.759Z","updated_at":"2025-08-24T05:25:07.759Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276857082,"owners_count":25716776,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-25T02:00:09.612Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-graphics","art","awesome","awesome-list","computer-graphics","creative-coding","data-visualization","design","generative-art","graphics-programming","information-visualization","interaction-design","list","programming-graphics","resources","shaders","webgl"],"created_at":"2024-01-05T20:12:58.836Z","updated_at":"2025-09-27T07:30:27.349Z","avatar_url":"https://github.com/terkelg.png","language":"HTML","readme":"# Awesome Creative Coding [![Awesome](https://awesome.re/badge-flat.svg)](https://github.com/sindresorhus/awesome)\n\n# [\u003cimg src=\"https://raw.githubusercontent.com/terkelg/awesome-creative-coding/master/cover.png\"\u003e](https://github.com/terkelg/awesome-creative-coding)\n\n\u003e Carefully curated list of awesome [creative coding](https://en.wikipedia.org/wiki/Creative_coding) resources primarily for beginners/intermediates.\n\nCreative 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**.\n\n_Please read the [contribution guidelines](contributing.md) before contributing._\n\n## Contents\n\n- [Books](#books)\n- [Online Books](#online-books)\n- [Courses](#courses)\n- [Tools](#tools)\n  - [Frameworks • Libraries • Ecosystems](#frameworks--libraries--ecosystems)\n  - [Visual Programming Languages](#visual-programming-languages)\n  - [Sound Programming Languages](#sound-programming-languages)\n  - [Web Programming • Libraries](#web-programming--libraries)\n  - [Projection Mapping • VJing](#projection-mapping--vjing)\n  - [Online](#online)\n  - [Hardware](#hardware)\n  - [Other](#other)\n- [Learning Resources](#learning-resources)\n  - [Videos](#videos)\n  - [Talks](#talks)\n  - [Articles](#articles)\n    - [Shaders • OpenGL • WebGL](#shaders--opengl--webgl)\n    - [Canvas](#canvas)\n    - [Hardware](#hardware-1)\n    - [Other](#other-1)\n  - [Interactive](#interactive)\n  - [Quick References • Cheat Sheets](#quick-references--cheat-sheets)\n- [Communities](#communities)\n  - [Subreddits](#subreddits)\n  - [Slack](#slack)\n  - [Other](#other-2)\n- [Math](#math)\n- [Machine learning • Computer Vision • AI](#machine-learning--computer-vision--ai)\n- [Inspiration](#inspiration)\n- [Events](#events)\n- [Schools • Workshops](#schools--workshops)\n- [Blogs • Websites](#blogs--websites)\n- [Related](#related)\n\n## Books\n\n- [Generative Art: A Practical Guide](https://www.manning.com/books/generative-art) - Practical guide using Processing.\n- [Generative Design](https://www.generative-gestaltung.de/) - Visualize, Program, and Create with Processing.\n- [The Nature of Code](https://natureofcode.com/) - Simulating natural systems with Processing.\n- [Programming Design Systems](https://programmingdesignsystems.com/) - Practical introduction to the new foundations of graphic design.\n- [Learning Modern 3D Graphics Programming](https://paroj.github.io/gltut/) - Series of tutorials on using OpenGL to do graphical rendering.\n- [Programming Interactivity](https://shop.oreilly.com/product/9780596154158.do) - Designer's Guide to Processing, Arduino, and openFrameworks.\n- [openFrameworks Essentials](https://www.packtpub.com/application-development/openframeworks-essentials) - openFrameworks beginner Guide for programmer, visual artist, or designer.\n- [Mastering openFrameworks: Creative Coding Demystified](https://www.packtpub.com/application-development/mastering-openframeworks-creative-coding-demystified) - Advanced in depth guide to openFrameworks.\n- [Algorithms for Visual Design Using the Processing Language](https://www.amazon.com/Algorithms-Visual-Design-Processing-Language/dp/0470375485) - Experiment with design problems to create 3D animations, GUIs, and more.\n- [Foundation HTML5 Animation with JavaScript](https://link.springer.com/book/10.1007/978-1-4302-3666-5) - Everything you need to know to create animation using the HTML5 canvas.\n- [Playing with chaos](https://www.playingwithchaos.net/) - Programming Fractals and Strange Attractors in JavaScript.\n- [Ray Tracing in One Weekend](https://www.amazon.com/Ray-Tracing-Weekend-Minibooks-Book-ebook/dp/B01B5AODD8/) - Mini book about Ray Tracing.\n- [Processing 2: Creative Programming Cookbook](https://www.packtpub.com/hardware-and-creative/processing-2-creative-programming-cookbook) - Guides you to explore the Processing environment using practical and useful recipes.\n- [Data-driven Graphic Design](https://www.amazon.com/dp/1472578309/) - Creative Coding for Visual Communication.\n- [Real-Time Rendering](https://www.amazon.com/Real-Time-Rendering-Third-Tomas-Akenine-Moller/dp/1568814240) - Learn how to use modern techniques to generate synthetic three-dimensional images in a fraction of a second.\n- [Graphics Shaders: Theory and Practice](https://www.amazon.com/Graphics-Shaders-Theory-Practice-Second/dp/1568814348/) - Introduction to shader programming in general, but focusing on the GLSL shading language.\n- [Anton's OpenGL 4 Tutorials](https://www.amazon.com/gp/product/B00LAMQYF2/) - Practical guide to starting 3d programming with OpenGL.\n- [Physics for JavaScript Games, Animation, and Simulations](https://www.apress.com/us/book/9781430263371) - Teaches JavaScript programmers how to incorporate real physics into their HTML5 games, animations, and simulations.\n- [Math for Programmers](https://www.manning.com/books/math-for-programmers) - Book teaches you to solve mathematical problems in code.\n- [Synthèse d'images avec OpenGL (ES)](https://www.d-booker.fr/opengl/78-synthese-d-images.html) - Book in french, which covers OpenGL, OpenGL ES and WebGL.\n- [Hands-On Music Generation with Magenta](https://alexandredubreuil.com/publications/2020-01-31-music-generation-with-magenta-deep-learning-in-music-generation/) - Explore the role of deep learning in music generation and assisted music composition.\n\n## Online Books\n\n- [The Book of Shaders](https://thebookofshaders.com/) - Step-by-step guide through the abstract and complex universe of fragment shaders.\n- [WebGL Fundamentals](https://webglfundamentals.org/) - WebGL from the ground up. No magic.\n- [WebGL 2 Fundamentals](https://webgl2fundamentals.org/) - WebGL2 from the ground up. No magic.\n- [Learn OpenGL](https://learnopengl.com/) - Extensive tutorial resource for learning Modern OpenGL.\n- [Scratchapixel 2.0](https://www.scratchapixel.com/) - Learn Computer Graphics From Scratch.\n- [ofBook](https://openframeworks.cc/ofBook/chapters/foreword.html) - Community-written book/guide on openFrameworks.\n- [OGLdev](http://ogldev.atspace.co.uk/) - Collection of modern OpenGL tutorials by Etay Meiri.\n- [OpenGL Tutorial](http://www.opengl-tutorial.org/) - Site dedicated to tutorials for OpenGL 3.3 and later.\n- [Open.gl](https://open.gl/) - Guide that teach you the basics of using OpenGL.\n- [Pixel Shaders](http://pixelshaders.com/) - Interactive Introduction to Graphics Programming.\n- [OpenGLBook](http://openglbook.com/) - Free OpenGL programming tutorial in online book format.\n- [Graphics Programming Projects](http://graphicscodex.com/projects/projects/index.html) - Book about 3D computational graphics by Morgan McGuire.\n- [On Generative Algorithms](http://inconvergent.net/generative/) - Notes about generating various organic patterns, with examples and Python code, by Anders Hoff.\n- [Computer Graphics from Scratch](http://www.gabrielgambetta.com/computer-graphics-from-scratch/introduction.html) - A raytracing and rasterization textbook that teaches you how OpenGL and DirectX works.\n- [A Primer on Bézier Curves](https://pomax.github.io/bezierinfo/) - A free book for when you really need to know how to do Bézier things.\n- [3D Game Shaders For Beginners](https://lettier.github.io/3d-game-shaders-for-beginners) - Step-by-step guide to real-time shading techniques.\n- [XEM WebGL Guide](https://xem.github.io/articles/webgl-guide.html) - Step-by-step guide to WebGL.\n- [Creative Coding Notebooks](https://diegoinacio.github.io/creative-coding-notebooks-page/) - An authorial set of fundamental Python recipes on Creative Coding and Computer Art, by Diego Inácio.\n- [WebGL Academy](http://www.webglacademy.com) - Learn WebGL and 3D algorithmic in a progressive and interactive way.\n\n## Courses\n\n- [Create 3D Graphics in JS Using WebGL](https://egghead.io/courses/create-3d-graphics-in-javascript-using-webgl) - Get started creating content with WebGL without any frameworks.\n- [Learn HTML5 Graphics and Animation](https://egghead.io/courses/learn-html5-graphics-and-animation) - Introduction to the canvas 2D drawing API.\n- [Interactive 3D Graphics](https://classroom.udacity.com/courses/cs291) - Udacity course that teach you the principles of 3D computer graphics.\n- [Interactive Computer Graphics](https://www.coursera.org/learn/interactive-computer-graphics) - Computer graphics course from Coursera.\n- [Kadenze Creative Coding](http://try.kadenze.com/creative-coder/) - Selection of Kadenze courses covering p5.js, TensorFlow, Max/Jitter, and ChucK.\n- [Creative Programming for Digital Media \u0026 Mobile Apps](https://www.coursera.org/learn/digitalmedia) - Coursera course on creative coding with processing.\n- [Imaginary Institute](https://imaginary-institute.com/) - Learn how to create gorgeous interactive graphics.\n- [Future Learn: Creative Coding](https://www.futurelearn.com/courses/creative-coding) - Use computer programming as a creative discipline to generate sounds, images, animations and more.\n- [Intro to JS: Drawing \u0026 Animation](https://www.khanacademy.org/computing/computer-programming/programming) - Use JavaScript and the ProcessingJS library to create drawings and animations.\n- [Advanced JS: Natural Simulations](https://www.khanacademy.org/computing/computer-programming/programming-natural-simulations) - Combine JS, ProcessingJS, and mathematical concepts to simulate nature in your programs\n- [Interactive Data Visualization with Processing](https://www.lynda.com/Processing-tutorials/Interactive-Data-Visualization-Processing/97578-2.html) - Learn how to read, map, and illustrate data with Processing.\n- [Programming Data Visualizations: A Coding Toolkit for Processing](https://www.skillshare.com/classes/Programming-Data-Visualizations-A-Coding-Toolkit-for-Processing/1782124914) - Join information designer Nicholas Felton in the world of Processing.\n- [Introduction to Data Visualization](https://www.skillshare.com/classes/Introduction-to-Data-Visualization-From-Data-to-Design/1435958330) - Join Nicholas Felton for a smart, comprehensive, and inspiring intro to data visualization.\n- [Programming Graphics I](https://www.skillshare.com/classes/Programming-Graphics-I-Introduction-to-Generative-Art/782118657), [2](https://www.skillshare.com/classes/Programming-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.\n- [Creative Coding with Canvas \u0026 WebGL](https://frontendmasters.com/courses/canvas-webgl/) - Workshop by Matt DesLauriers. that teaches you about generative art, interactive animations, 3D graphics, and shaders.\n- [Advanced Creative Coding with WebGL \u0026 Shaders](https://frontendmasters.com/courses/webgl-shaders/) - Workshop by Matt DesLauriers that go deeper into graphics programming, math and shaders.\n- [Three.js Journey](https://threejs-journey.com/) - This course by Bruno Simon will teach you the secrets to create the coolest WebGL websites with Three.js whether you are a beginner or an advanced developer.\n- [3D Computer Graphics Programming](https://pikuma.com/courses/learn-3d-computer-graphics-programming) - Learn all the theory and the math behind 3D graphics while creating a software renderer from scratch using the C programming language\n\n## Tools\n\n### Frameworks • Libraries • Ecosystems\n\n- [Processing](https://processing.org) [Cross-platform] - Computer programming language and IDE for visual arts.\n- [py5](https://py5coding.org) [Cross-platform] - A library that integrates Processing into the Python 3 ecosystem.\n- [Cinder](https://libcinder.org/) [Cross-platform] - Open source library for professional-quality creative coding in C++.\n- [openFrameworks](https://openframeworks.cc/) [Cross-platform] - Open source C++ toolkit for creative coding.\n- [NAP](https://nap-framework.tech/) [Cross-platform] - Open source data-driven real-time control \u0026 visualization platform suited for professional installations in C++, incl. Vulkan renderer.\n- [C4](https://www.c4ios.com) [iOS] - Open-source creative coding framework for iOS.\n- [Unity](https://unity3d.com/) [Mac, Win] - Game engine, but useful for creative coding and installations.\n- [Godot](https://godotengine.org) [Cross-platform] - Open source game engine, that can also be used for all sorts of things.\n- [PlayCanvas](https://playcanvas.com/) [Cross-platform] - Open source, realtime collaborative WebGL engine.\n- [hg_sdf](https://mercury.sexy/hg_sdf/) [Cross-platform] - GLSL library for building signed distance functions.\n- [nannou](https://nannou.cc/) [Cross-platform] - Open-source creative coding framework for the Rust language.\n- [thi.ng](https://thi.ng/) [Cross-platform] - Open source collection of computational design tools for JavaScript, TypeScript, Clojure and ClojureScript languages.\n- [PixelKit](https://github.com/heestand-xyz/PixelKit) [iOS, Mac] - Open source, live graphics, Swift framework, powered by Metal.\n- [OPENRNDR](https://openrndr.org/) [Cross-platform] - Open source library for creative coding written in Kotlin.\n- [Phaser](https://phaser.io/) [Cross-platform] - HTML5 framework for building games, uses both a Canvas and WebGL renderer.\n- [Canvas-sketch](https://github.com/mattdesl/canvas-sketch) [Cross-platform] - HTML5 framework for making generative artwork in JavaScript and the browser.\n- [AsyncGraphics](https://github.com/heestand-xyz/AsyncGraphics) [iOS, macOS] - Open source, live graphics, async / await, Swift package, powered by Metal.\n- [Lygia](https://github.com/patriciogonzalezvivo/lygia) [Cross-platform] - Granular and multi-language (GLSL, HLSL, WGSL, MSL and CUDA) shader library designed for performance and flexibility.\n- [Fragment.tools](https://github.com/raphaelameaume/fragment) [Cross-platform] - A web development environment for creative coding.\n\n### Visual Programming Languages\n\n- [vvvv](https://visualprogramming.net/) [Win] - Hybrid visual/textual live-programming environment for easy prototyping and development.\n- [NodeBox](https://www.nodebox.net/node/) [Mac, Win] - Cross-platform, node-based GUI for efficient data visualizations and generative design.\n- [TouchDesigner](https://www.derivative.ca/) [Mac, Win] - Visual development platform to create realtime projects.\n- [Quartz Composer](https://developer.apple.com/library/content/documentation/GraphicsImaging/Conceptual/QuartzComposerUserGuide/qc_intro/qc_intro.html) [Mac] - Development tool for processing and rendering graphical data.\n- [Vuo](https://vuo.org/) [Mac] - Live interactive-media programming environment.\n- [Max](https://cycling74.com/products/max/) [Mac, Win] - Visual programming language for media.\n- [Pure Data](https://puredata.info/) [Cross-platform] - Open source visual programming language for multimedia.\n- [ossia score](https://ossia.io) [Cross-platform] - Interactive, intermedia audio-visual sequencer.\n- [tooll](https://tooll.io/) [Win] - Open source tool for creating interactive 3d content and animations.\n- [XOD](https://xod.io/) [Cross-platform] - Open source visual programming language and environment for microcontroller-based projects.\n- [Isadora](https://troikatronix.com) [Cross-platform] - Scene based media control software with integrated projection mapper.\n- [cables](https://cables.gl) [Cross-platform/Web] - Your model kit for creating beautiful interactive content. Currently in private beta, invites can be requested.\n- [eternal](https://github.com/kousun12/eternal) [Web] - Programs as graphs and graphs as compositional tools for creation\n- [Notch Builder](https://www.notch.one) [Win] - Node-based authoring tool with a strong focus on real-time graphics. Currently in beta.\n- [JOY.JS](https://ncase.me/joy/) - Realtime visual coding tool, easy to understand and aimed at beginners.\n- [Circles](https://circles.software) [iPhone, iPad, Mac] - Live graphics node editor, powered by AsyncGraphics.\n- [TIC-80](https://tic80.com/) - Make pixel art style games and art on a 240\\*136 pixel screen.\n\n### Sound Programming Languages\n\n- [SuperCollider](https://supercollider.github.io/) [Multi-platform] - Platform for audio synthesis and algorithmic composition.\n- [ChucK](https://chuck.cs.princeton.edu/) - Strongly-timed, concurrent, and on-the-fly music programming language.\n- [TidalCycles](https://tidalcycles.org/) - Domain specific language for live coding of pattern.\n- [Sonic Pi](https://sonic-pi.net/) - The live coding music synth for everyone.\n- [Csound](https://csound.com/) - A sound and music computing system.\n- [Orca](https://100r.co/site/orca.html) - Live coding environment to quickly create procedural sequencers.\n- [handel](https://handel-pl.github.io/) - A small procedural programming language for writing songs in browser.\n- [Overtone](https://overtone.github.io/) - An open source audio environment designed to explore new musical ideas from synthesis and instrument building to live-coding.\n- [Melrōse](https://melrōse.org/) - A MIDI producing environment for creating (live) music.\n- [Glicol](https://glicol.org) - Graph-oriented live coding language and music/audio DSP library written in Rust.\n\n### Web Programming • Libraries\n\n- [three.js](https://github.com/mrdoob/three.js/) - JavaScript 3D library.\n- [regl](https://github.com/regl-project/regl) - Functional WebGL.\n- [Stackgl](https://stack.gl/) - Open software ecosystem for WebGL, built on top of browserify and npm.\n- [Paper.js](https://paperjs.org/) - The swiss army knife of vector graphics scripting.\n- [Pixi.js](https://www.pixijs.com/) - HTML 5 2D rendering engine that uses webGL with canvas fallback.\n- [p5.js](https://p5js.org/) - JavaScript library that starts with the original goal of Processing.\n- [Pts.js](https://ptsjs.org/) - JavaScript library for visualization and creative-coding.\n- [Fabric.js](https://fabricjs.com/) - JavaScript canvas library, SVG-to-canvas parser.\n- [Maker.js](https://maker.js.org) - Parametric line drawing for SVG, CNC \u0026 laser cutters.\n- [OpenJSCAD](https://openjscad.org) - Programmatic 3D modeling in JavaScript.\n- [Sketch.js](https://soulwire.github.io/sketch.js/) - Minimal JavaScript creative coding framework.\n- [Two.js](https://two.js.org/) - Two-dimensional drawing api geared towards modern web browsers.\n- [lightgl.js](https://github.com/evanw/lightgl.js) - A lightweight WebGL library.\n- [picogl.js](https://github.com/tsherif/picogl.js) - A minimal WebGL 2 rendering library.\n- [Alfrid](https://github.com/yiwenl/Alfrid) - A WebGL tool set.\n- [Babylon.js](https://github.com/BabylonJS/Babylon.js) - complete JavaScript framework for building 3D games with HTML 5 and WebGL.\n- [twigl](https://github.com/greggman/twgl.js) - A Tiny WebGL helper Library.\n- [luma.gl](https://github.com/uber/luma.gl) - WebGL2 Components for Data Visualization.\n- [css-doodle](https://css-doodle.com/) - A web component for drawing patterns with CSS.\n- [OGL.js](https://github.com/oframe/ogl) - JavaScript 3D library (WebGL).\n- [Zdog](https://zzz.dog/) - A pseudo-3D engine for canvas \u0026 SVG.\n- [Oimo.js](https://github.com/lo-th/Oimo.js/) - Lightweight 3d physics engine for javascript\n- [Ammo.js](https://github.com/kripken/ammo.js/) - Direct port of the Bullet physics engine to JavaScript using Emscripten.\n- [Theatre.js](https://github.com/ariaminaei/theatre) - Motion design library with visual tools\n\n### Projection Mapping • VJing\n\n- [MadMapper](http://www.madmapper.com/) [Mac] - Video mapping projections and Light mapping.\n- [VDMX](https://vidvox.net/) [Mac] - Realtime multimedia performance application.\n- [Modul8](http://www.modul8.ch/) [Mac] - Real time video mixing and compositing.\n- [Resolume](https://resolume.com/) [Mac, Win] - Mixing of digital video and effects in a realtime.\n- [CoGe VJ](http://imimot.com/cogevj/) [Mac] - VJ software designed for realtime HD video mixing and compositing with a modular user interface.\n- [VirtualMapper](https://github.com/baku89/VirtualMapper) - Realtime preview tool for projection mapping.\n- [Millumin](https://www.millumin.com/v3/index.php) [Mac] - A software to create and perform interactive audiovisual shows.\n- [Smode](https://smode.fr/) [Win] - A real-time 2D/3D creation, compositing and video-mapping engine.\n- [Veejay](http://veejayhq.net/) [Linux] - A live performance tool featuring simple non-linear editing and mixing from multiple sources (files, devices, streams...)\n\n### Online\n\n- [Shadertoy](https://www.shadertoy.com/) - Build and share shaders with the world and get inspired.\n- [Shader Park](https://shaderpark.com/) - A JavaScript library for creating interactive procedural 2D and 3D shaders.\n- [GLSL Sandbox](http://glslsandbox.com/) - Online shader editor and gallery.\n- [Shdr Editor](http://shdr.bkcore.com/) - Online shader editor.\n- [CodePen](http://codepen.io/) - Show case of advanced techniques with editable source code.\n- [Shadershop](http://www.cdglabs.org/Shadershop/) - Interface for programming GPU shaders.\n- [Vertexshaderart](https://www.vertexshaderart.com/) - Online shader editor and gallery.\n- [Cyos](http://cyos.babylonjs.com/) - Online shader editor.\n- [GlslEditor](http://editor.thebookofshaders.com/) - Simple WebGL Fragment Shader Editor.\n- [OpenProcessing](https://www.openprocessing.org/) - Algorithmic Designs Created with Processing, p5js and processingjs.\n- [P5.js Editor](https://editor.p5js.org/) - Online web editor for P5.js.\n- [LiveCodeLab](http://livecodelab.net) - Run-as-you-type tool for VJs, musicians, teachers, students, kids.\n- [Turtletoy](https://turtletoy.net/) - Minimalistic API and online showcase for generative code. (JavaScript)\n- [ShaderGif](https://shadergif.com/) - Open source home for art made with code (WebGL1/2, JavaScript Canvas \u0026 P5.js).\n- [P5LIVE](https://teddavis.org/p5live/) - p5.js live-coding environment.\n- [NEORT](https://neort.io/popular) - Digital art platform for creative coders (Fragment Shader, JavaScript Canvas).\n- [Shelly](https://shelly.dev/) - Learn programming by issuing instructions to a turtle.\n- [tixy.land](https://tixy.land/) - The most minimalist creative coding environment is alive.\n- [BBC Micro bot](https://www.bbcmicrobot.com/) - Run your tweet on an 8-bit computer emulator.\n- [Hydra](https://hydra.ojack.xyz/) - Live code-able video synth and coding environment.\n\n### Hardware\n\n- [Arduino](https://www.arduino.cc/) - Open source microcontroller kits for building digital devices and interactive objects.\n- [Raspberry Pi](https://www.raspberrypi.org/) - Small single-board computers.\n- [Puck.js](https://www.puck-js.com/) - Open source JavaScript microcontroller you can program wirelessly.\n- [BeagleBoard](http://beagleboard.org/) - Low-power open source single-board computers.\n- [Makey Makey](http://www.makeymakey.com/) - Turn everyday objects into touchpads and combine them with the internet.\n- [Leap Motion](https://www.leapmotion.com/) - Sensor device that supports hand and finger motions as input.\n- [AxiDraw](https://www.axidraw.com/) - Simple, modern, and precise pen plotter.\n- [Phidgets](https://www.phidgets.com) - Sensors, input devices and controllers for computers.\n- [Teensy](https://www.pjrc.com/teensy/) - USB-based microcontroller development system.\n- [Lightform](https://lightform.com/) - AR projection mapping with built-in depth sensor.\n\n### Other\n\n- [Structure Synth](http://structuresynth.sourceforge.net/) [Cross-platform] - Application for generating 3D structures by specifying a design grammar.\n- [F3](http://www.syedrezaali.com/f3-mac-app/) [Mac] - Powerful 3D design app that enables you to live code 3D form.\n- [Fragment](https://github.com/rezaali/fragment) [Mac]- App to live code GLSL graphics.\n- [ShaderTool](http://store.steampowered.com/app/314720/) [Win] - Modern shader IDE for programmers and FX artists.\n- [Syphon](http://syphon.v002.info/) [Mac] - Allows applications to share frames with one another in realtime.\n- [KodeLife](https://hexler.net/software/kodelife) - Real-time GPU shader editor, live-code performance tool and graphics prototyping sketchpad.\n- [ISF](https://www.interactiveshaderformat.com/) - GLSL shaders for use in interactive applications.\n- [glslViewer](http://patriciogonzalezvivo.com/2015/glslViewer/) - Live-coding console tool that renders GLSL Shaders.\n- [shoebot](http://www.shoebot.net/) [Cross-platform] - Shoebot is a creative coding environment designed for making vector graphics and animations with Python.\n- [DrawBot](http://www.drawbot.com/) [Mac] - Education oriented 2d graphics programming environment based on Python.\n- [Klak](https://github.com/keijiro/Klak) - A collection of scripts for creative coding with Unity.\n- [basil.js](https://basiljs.ch/) - Scripting (JS) in InDesign for designers and artists in the spirit of Processing.\n- [Konstrukt](https://github.com/MarcelMue/konstrukt) [Cross-platform] - A commandline tool to generate different scalable patterns as SVGs.\n\n## Learning Resources\n\n### Videos\n\n- [The Coding Train](https://www.youtube.com/user/shiffman) - Daniel Shiffman makes videos about creative coding.\n- [MFGD - Fragment Shaders](https://www.youtube.com/playlist?list=PLW3Zl3wyJwWMpFSRpeMmSBGDShbkiV1Cq) - YouTube playlist about fragment shaders.\n- [Shaders Laboratory](https://www.youtube.com/channel/UCDk9-aPr8zQzwi4ylnuoJ6w) - YouTube channel about shaders.\n- [Makin' Stuff Look Good](https://www.youtube.com/channel/UCEklP9iLcpExB8vp_fWQseg) - YouTube channel about shaders case studies.\n- [openFrameworks Tutorial Series](https://www.youtube.com/watch?v=dwt2NAd1ZYY\u0026list=PL4neAtv21WOlqpDzGqbGM_WN2hc5ZaVv7) - YouTube series to learning openFrameworks\n- [openFrameworks tutorial](https://www.youtube.com/watch?v=IKSTo_0pB28\u0026index=51\u0026list=PL4neAtv21WOmrV8z9rSzL20QpdLU1zJLr) - YouTube playlist about openFrameworks - not updated [2015].\n- [Shader Tutorial Series](https://www.youtube.com/watch?v=HIvNePu7UEE\u0026list=PL4neAtv21WOmIrTrkNO3xCyrxg4LKkrF7) - YouTube playlist about Shaders, using Visual Studio Code.\n- [Kha Tutorial Series](https://www.youtube.com/watch?v=5Uxht76ODtQ\u0026list=PL4neAtv21WOmmR5mKb7TQvEQHpMh1h0po) - YouTube playlist about the Kha framework, built in Haxe.\n- [Fun with WebGL 2.0](https://www.youtube.com/watch?v=LtFujAtKM5I\u0026list=PLMinhigDWz6emRKVkVIEAaePW7vtIkaIF) - YouTube playlist about WebGL 2.0.\n- [Modern OpenGL 3.0+ Tutorials](https://www.youtube.com/playlist?list=PLRtjMdoYXLf6zUMDJVRZYV-6g6n62vet8) - YouTube playlist about modern OpenGL.\n- [Vertexshaderart](https://www.youtube.com/channel/UC6IqL5vkMJpqBG_bFDjsaxw) - YouTube playlist about vertex shaders.\n- [Diving in Three.js](https://www.youtube.com/playlist?list=PL08jItIqOb2qyMOhtEUoLh100KpccQiRf) - YouTube playlist diving into three.js.\n- [Shadertoy Tutorials](https://www.youtube.com/watch?v=u5HAYVHsasc\u0026list=PLGmrMu-IwbguU_nY2egTFmlg691DN7uE5) - YouTube playlist teaching you how to make shaders, starting with zero knowledge using shadertoy.\n- [WebGL Lighting](https://www.youtube.com/playlist?list=PLxaZqnd-OQM7Y0lfe7h2cjlQAm5O9_6UL) - Introduction to WebGL lighting with Greg Tatum.\n\n### Talks\n\n- [Inigo Quilez Live](https://iquilezles.org/live/) - Collection of live coding videos by Íñigo Quílez.\n- [There is also canvas](https://slideslive.com/38898318/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/).\n- [OpenGL 3D Game Tutorials](https://www.youtube.com/playlist?list=PLRIWtICgwaX0u7Rf9zkZhLoLuZVfUksDP) - Beginners tutorial series about creating 3D games OpenG.\n- [How We Do This Shit](http://how-we-do-this-shit.com/) - Talk on how tech-based artists do this financially.\n- [Making WebGL Dance](http://acko.net/files/fullfrontal/fullfrontal/webglmath/online.html) - How I Learnt to Stop Worrying and Love Linear Algebra.\n- [The Pixel Factory](http://acko.net/files/gltalks/pixelfactory/online.html) - Talk about WebGL, GPUs and Math by Steven Wittens.\n- [Poetic Computation](https://www.youtube.com/watch?v=bmztlO9_Wvo\u0026t=387s) - Inspiring talk by Zach Lieberman.\n- [Generative Machines](https://www.youtube.com/watch?v=8Uo6zFwSO78) - FITC talk by Matt DesLauriers about his passion for generative art.\n\n### Articles • Tutorials\n\n#### Shaders • OpenGL • WebGL\n\n- [Introduction to shaders](https://aerotwist.com/tutorials/an-introduction-to-shaders-part-1/) - Part 1 of an introduction to shaders using threejs.\n- [Three.js 101](https://medium.com/@necsoft/three-js-101-hello-world-part-1-443207b1ebe1) - Introduction to three.js from a creative coder perspective.\n- [lwjgl: Shaders](https://github.com/mattdesl/lwjgl-basics/wiki/Shaders) - Shader tutorial in the context of lwjgl-basics.\n- [Shaders: A primer](https://notes.underscorediscovery.com/shaders-a-primer/) - A primer on shaders.\n- [Shaders: Second stage](https://notes.underscorediscovery.com/shaders-second-stage/) - The second part to the previous.\n- [WebGL Lessons — Fragment Shaders](https://github.com/Jam3/jam3-lesson-webgl-shader-intro) - A brief introduction to fragment shaders.\n- [WebGL Lessons — ThreeJS Shaders](https://github.com/Jam3/jam3-lesson-webgl-shader-threejs) - Using custom vertex and fragment shaders in ThreeJS.\n- [ThreeJS post-process example](https://github.com/Jam3/threejs-post-process-example) - example of post-processing effects in ThreeJS.\n- [Ray Marching and Signed Distance Functions](https://www.scratchapixel.com/lessons/3d-basic-rendering/introduction-to-ray-tracing/how-does-it-work.html) - Introduction to ray tracing.\n- [Introduction to Ray Tracing](http://jamie-wong.com/2016/07/15/ray-marching-signed-distance-functions/) - A simple method for creating 3D images.\n- [GLSL lighting walkthrough](https://github.com/stackgl/glsl-lighting-walkthrough) - Phong shading tutorial with glslify.\n- [Three glslify example](https://github.com/mattdesl/three-glslify-example) - Example on how to use three.js with glslify.\n- [WebGL Beyond Dom](https://github.com/gregtatum/talk-webgl-beyond-dom) - Greg Tatum explains the basics of WebGL using Regl.\n- [FBO particles](http://barradeau.com/blog/?p=621) - Article about FBO/GPGPU particles by @nicoptere.\n- [Ray marching (with THREE.js)](http://barradeau.com/blog/?p=575) - Article about ray marching with three.js by @nicoptere.\n- [Custom shaders with Three.JS](https://csantosbh.wordpress.com/2014/01/09/custom-shaders-with-three-js-uniforms-textures-and-lighting/) - Introduction to custom shaders, uniforms, textures and lighting in three.js.\n- [An intro to modern OpenGL](http://duriansoftware.com/joe/An-intro-to-modern-OpenGL.-Chapter-1:-The-Graphics-Pipeline.html) - First part of an introduction to modern OpenGL.\n- [Modern OpenGL Series](https://github.com/tomdalling/opengl-series) - Good introduction to some of the OpenGL terms.\n- [Smooth minimum](https://iquilezles.org/www/articles/smin/smin.htm) - Article about the smooth based primitive union.\n- [Modeling with distance functions](https://iquilezles.org/www/articles/distfunctions/distfunctions.htm) - Collection of distance functions in one centralized place.\n- [Volumetric rendering](http://www.alanzucconi.com/2016/07/01/volumetric-rendering/) - Explains how to create complex 3D shapes inside volumetric shaders.\n- [Real-time Rendering](http://www.realtimerendering.com/) - Book, blog and collection of resources regarding real-time rendering.\n- [OpenGL 4 Shaders](http://antongerdelan.net/opengl/shaders.html) - Short and sweet introduction to OpenGL shaders by Anton Gerdelan.\n- [On ray casting, ray tracing, ray marching and the like](http://www.hugi.scene.org/online/hugi37/hugi%2037%20-%20coding%20adok%20on%20ray%20casting,%20ray%20tracing,%20ray%20marching%20and%20the%20like.htm) - The title says it all. Introduction by Adok.\n- [Writing a small software renderer](http://blog.simonrodriguez.fr/articles/18-02-2017_writing_a_small_software_renderer.html) - Really good introduction to how basic software rendering works.\n- [WebGL Tutorials](http://www.webgltutorials.org/) - Website with a really good collection of WebGL tutorials.\n- [Generating Geometry: 1](http://codepen.io/mcdorli/post/generating-geometry-part-1-basics), [2](http://codepen.io/mcdorli/post/generating-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.\n- [Into Vertex Shaders](https://medium.com/@Zadvorsky/into-vertex-shaders-594e6d8cd804) - Series of tutorials about WebGL, Three.js, and Three.bas.\n- [The Spaces of WebGL](https://medium.com/@Zadvorsky/into-vertex-shaders-part-1-the-spaces-of-webgl-c70ded527841) - Brief overview over the different coordinate systems throughout the 3D graphics pipeline.\n- [WebGL Workshop](http://webgl-workshop.com/) - Short and sweet online introduction to WebGL.\n- [THREE.js \u0026 instanced geometry](http://barradeau.com/blog/?p=1109) - Fluffy predator with three.js and instanced geometry.\n- [Particle Effects via Billboards](http://www.chinedufn.com/webgl-particle-effect-billboard-tutorial/) - How to create a particle effects with billboarding and WebGL.\n- [Beautifully Animate Points with WebGL and regl](https://peterbeshai.com/beautifully-animate-points-with-webgl-and-regl.html) - How to create GPGPU particles with regl.\n- [WebGL Tutorial: Directional Shadow Mapping without extensions](https://www.chinedufn.com/webgl-shadow-mapping-tutorial/) - Introduction to the concepts behind real time directional light shadow mapping.\n- [WebGL Quest](http://xem.github.io/articles/#webgl_quest_2) - A tutorial and a list of useful resources to use WebGL raymarching and distance functions easily.\n- [Exploring bump mapping with WebGL](http://apoorvaj.io/exploring-bump-mapping-with-webgl.html) - Introduction to different bump mapping techniques.\n- [OpenGL/GLSL Shader Programming](http://web.cse.ohio-state.edu/~wang.3602/courses/cse5542-2013-spring/13-GLSL.pdf) - Deck on OpenGL/GLSL shader programming.\n- [Particles in a Simplex Noise Flow Field](https://codepen.io/DonKarlssonSan/post/particles-in-simplex-noise-flow-field) - Perlin noise flow field tutorial.\n- [Flow Fields, Part 1](https://medium.com/@bit101/flow-fields-part-i-3ebebc688fd8) - Introduction to flow fields also known as vector fields.\n- [Flow Fields, Part 2](https://medium.com/@bit101/flow-fields-part-ii-f3c24c1b777d) - Introduction to flow fields also known as vector fields.\n- [Graphics for Games](https://research.ncl.ac.uk/game/mastersdegree/graphicsforgames/) - Introduction to 3D graphics programming including shaders, math post-processing etc. from Newcastle University.\n- [Three.js Basics](http://www.realtimerendering.com/basics3js/#1) - Introduction to Three.js by Eric Haines.\n- [An Interactive Introduction to WebGL and three.js](https://www.cs.unm.edu/~angel/SIGGRAPH17/COURSE/s17_final.pdf) - Slides from the SIGGRAPH 2017 WebGL workshop.\n- [How to Start Learning Computer Graphics Programming](https://erkaman.github.io/posts/beginner_computer_graphics.html) - Advice and thoughts on how to get started by Eric Arnebäck.\n- [What Every Coder Should Know About Gamma](http://blog.johnnovak.net/2016/09/21/what-every-coder-should-know-about-gamma/) - Deep dive into the importance of gamma.\n\n#### Canvas\n\n- [HTML Canvas Deep Dive](http://joshondesign.com/p/books/canvasdeepdive/toc.html) - Profound introduction to the canvas API.\n- [31 days of Canvas tutorials](http://creativejs.com/2011/08/31-days-of-canvas-tutorials/) - Collection of canvas tutorials by Seb Lee-Delisle.\n\n#### Hardware\n\n- [Pen Plotter Art \u0026 Algorithms Part 1](https://mattdesl.svbtle.com/pen-plotter-1), [2](https://mattdesl.svbtle.com/pen-plotter-2) - How to use the AxiDraw pen plotter with JavaScript.\n\n#### Other\n\n- [Noise in Creative Coding](https://varun.ca/noise/) - In-depth blog post about noise as an indispensable tool for creative coding.\n- [Cat Like Coding](http://catlikecoding.com/unity/tutorials/) - In depth tutorials on math, algorithms and Unity.\n- [Fun Programming](http://funprogramming.org/) - Learn creative coding writing simple programs.\n- [Creative-coding on iOS with C4](http://www.creativeapplications.net/tutorials/creative-coding-on-ios-with-c4-tutorial/) - Introduction to C4 published on Creative Applications.\n- [COSMOS](http://www.c4ios.com/cosmos/) - An end-to-end tutorial on the design, programming and launch of an app using C4.\n- [Particle Physics](https://www.khanacademy.org/partner-content/pixar/effects/particle-physics/a/start-here-fx) - Particle physics explained.\n- [Visualizing Algorithms](https://bost.ocks.org/mike/algorithms/) - Looks at the use of visualization to understand, explain and debug algorithms.\n- [Adventures in Game Development World](http://ruh.li/) - Easy to understand collection of articles on game development, but relevant to creative coding as well.\n- [Amit's Game Programming Information](http://www-cs-students.stanford.edu/~amitp/gameprog.html) - Collection of resources on stuff like path-finding, Ai, math etc.\n- [Tips to Improve Your Generative Artwork](https://tylerxhobbs.com/essays/2018/tips-to-improve-your-generative-artwork) - Tips to make your art look better.\n- [Working With Color in Generative Art](https://tylerxhobbs.com/essays/2016/working-with-color-in-generative-art) - Tips on how to get color right.\n\n### Interactive\n\n- [Shader-school](https://github.com/stackgl/shader-school) - Workshop for GLSL shaders and graphics programming.\n- [Webgl-workshop](https://github.com/stackgl/webgl-workshop) - The sequel to shader-school: Learn the WebGL API.\n- [Fragment-foundry](http://hughsk.io/fragment-foundry) - Interactive fragment shader tutorial.\n- [SDF Tutorial 1: box \u0026 balloon](https://www.shadertoy.com/view/Xl2XWt) - Shadertoy tutorial on raytracing.\n- [HOWTO: Ray Marching](https://www.shadertoy.com/view/XllGW4) - Shadertoy tutorial on Ray Marching.\n- [Raymarch Tutorial2](https://www.shadertoy.com/view/XlBGDW) - Shadertoy raymarch tutorial.\n- [GLSL 2D Tutorials](https://www.shadertoy.com/view/Md23DV) - Shadertoy GLSL 2D Tutorial.\n- [Bubble Breakdown](http://mrl.nyu.edu/~perlin/bubble_breakdown/) - Shader breakdown by Perlin.\n- [Let's Make A Ray Marcher](https://www.shadertoy.com/view/MdBfRK) - Interactive Shader-Toy on writing a ray marcher.\n- [Raymarching](https://www.shadertoy.com/view/4dSfRc) - Interactive Shader-Toy raymarching tutorial.\n\n### Quick References • Cheat Sheets\n\n- [Shaderific GLSL](https://shaderific.com/glsl.html) - OpenGL ES shading language reference.\n- [The Book of Shaders Glossary](https://thebookofshaders.com/glossary/) - Shader glossary by theme.\n- [gltut glossary pages: 1](https://paroj.github.io/gltut/Basics/Intro%20Glossary.html), [2](https://paroj.github.io/gltut/Basics/Tut01%20Glossary.html), [3](https://paroj.github.io/gltut/Basics/Tut02%20Glossary.html), [4](https://paroj.github.io/gltut/Positioning/Tut04%20Glossary.html), [5](https://paroj.github.io/gltut/Positioning/Tut05%20Glossary.html), [6](https://paroj.github.io/gltut/Positioning/Tut06%20Glossary.html), [7](https://paroj.github.io/gltut/Positioning/Tut07%20Glossary.html), [8](https://paroj.github.io/gltut/Positioning/Tut08%20Glossary.html) - OpenGL 3D programming glossary.\n- [Canvas Cheatsheet](https://web.archive.org/web/20171226205420/https://skilled.co/html-canvas/) - Quick and visual canvas cheatsheet.\n- [WebGL Cheatsheet](https://www.khronos.org/files/webgl/webgl-reference-card-1_0.pdf) - WebGL 1.0 API reference card.\n- [Glossary of Computer Graphics](https://en.wikipedia.org/wiki/Glossary_of_computer_graphics) - Glossary of terms relating computer graphics.\n- [GLSL Reference Guide](http://www.cs.cmu.edu/afs/cs/academic/class/15462-f10/www/lec_slides/glslref.pdf) - OpenGL Shading Language quick reference guide.\n- [3D Maths Cheat Sheet](http://antongerdelan.net/teaching/3dprog1/maths_cheat_sheet.pdf) - Math cheatsheet by Anton Gerdelan, from his OpenGL book.\n- [docs.GL](http://docs.gl/) - Improvement of the official OpenGL documentation.\n- [OpenGL Shading Language](https://www.khronos.org/opengl/wiki/OpenGL_Shading_Language) - Khronos Group GLSL wiki.\n- [OpenGL 4.3 Reference Card](https://www.khronos.org/files/opengl43-quick-reference-card.pdf) - PDF Reference Card for the OpenGL 4.3 API.\n- [Easings](http://easings.net/) - Interactive easing functions cheatsheet.\n- [PixelSpirit](http://pixelspiritdeck.com/) - GLSL library on the back of tarot cards, for learning and reference.\n- [Procedural Patterns And Noises](http://www.neilblevins.com/art_lessons/procedural_noise/procedural_noise.html) - Collection of procedural patterns and procedural noises.\n- [Visual Noises](https://ramesaliyev.com/visual-noises/) - Visualize noise algorithms in 1D and 2D.\n- [Trigonoparty](https://ramesaliyev.com/trigonoparty/) - Simple trigonometry visualisation.\n- [Morphogenesis](https://github.com/jasonwebb/morphogenesis-resources) - Exploration of how shapes, forms, and patterns emerge in nature.\n\n## Communities\n\n### Subreddits\n\n- [r/creativecoding](https://www.reddit.com/r/creativecoding/) - Sharing and discussing the use of computer programming as a creative discipline.\n- [r/raytraycing](https://www.reddit.com/r/raytracing/) - Subreddit on raytracing.\n- [r/opengl](https://www.reddit.com/r/opengl/) - News and discussion about OpenGL on all platforms.\n- [r/graphicsprogramming](https://www.reddit.com/r/GraphicsProgramming/) - Subreddit on graphics programming.\n- [r/processing](https://www.reddit.com/r/processing/) - Subreddit on Processing.\n- [r/shaders](https://www.reddit.com/r/shaders/) - Subreddit on shaders.\n- [r/proceduralgeneration](https://www.reddit.com/r/proceduralgeneration/) - Subreddit on procedural generation.\n- [r/MachineLearning](https://www.reddit.com/r/MachineLearning/) - Subreddit on machine learning.\n- [r/generative](https://www.reddit.com/r/generative/) - Subreddit on generative art and music.\n\n### Slack\n\n- [Creative Coding Club](http://creative-coding-club.slack.com/) - Creative Coding Club Slack.\n\n### Other\n\n- [The Creative Coding Podcast](http://creativecodingpodcast.com/) - Iain and Seb discuss the ins and outs of creative coding.\n- [realtimevfx.com](https://realtimevfx.com/) - Real Time VFX Community.\n- [Data Stories](http://datastori.es/) - Podcast on data visualization.\n- [3D Programming Weekly Articles](https://www.3dkingdoms.com/weekly/weekly.php) - Great collection of shader and math related resources.\n- [Pass The Pen](https://spectrum.chat/codepen/pass-the-pen/) - A community of front-end developers who build collaborative creative coding projects on CodePen.\n- [Creative Tech Weekly](https://us19.campaign-archive.com/home/?u=ac884610ba6fe07f4988a2182\u0026id=ad49a755b1) - A weekly newsletter of resources around creative technology.\n\n## Math\n\n- [Math as code](https://github.com/Jam3/math-as-code) - Cheat-sheet for mathematical notation in code form.\n- [Coding Math](https://www.youtube.com/user/codingmath) - Teaches you the math you need to understand as a programmer.\n- [Math snippets](https://github.com/terkelg/math) - Math snippets with graphic programming in mind.\n- [Formula Animations](https://www.youtube.com/watch?v=0ifChJ0nJfM) - The principles of painting with maths.\n- [Learning Maths again](https://github.com/silviopaganini/maths) - Collection of JS and GLSL math snippets.\n- [Eases](https://github.com/mattdesl/eases) - Grab-bag of modular easing equations.\n- [Math for Motion](https://soulwire.co.uk/math-for-motion/) - Visualization of different motion equations.\n- [Matrix Multiplication](http://matrixmultiplication.xyz) - Matrix multiplication visualized.\n- [Algebra rules](http://algebrarules.com/) - The most useful rules of basic algebra.\n- [Immersive Math](http://immersivemath.com/ila/index.html) - Fully interactive linear algebra.\n- [Image Kernels](http://setosa.io/ev/image-kernels/) - Interactive and visual introduction to image kernels.\n- [Sine and Cosine](http://setosa.io/ev/sine-and-cosine/) - Interactive explanation of sine and cosine.\n- [Perlin Noise](https://eev.ee/blog/2016/05/29/perlin-noise/) - Perlin noise explained in detail.\n- [Vector Math for 3D Computer Graphics](http://programmedlessons.org/VectorLessons/) - Tutorial on vector algebra and matrix algebra from the viewpoint of computer graphics.\n- [Desmos](https://www.desmos.com/) - Graph functions, plot data, evaluate equations, explore transformations, and much more.\n- [MFGD](https://www.youtube.com/playlist?list=PLW3Zl3wyJwWNQjMz941uyOIq3Nw6bcDYC) - Math for game developers YouTube playlist.\n- [Essence of linear algebra](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab) - Essence of linear algebra YouTube playlist.\n- [Mathematics of Animation](https://winkervsbecks.github.io/mathematics-of-animation/#/) - Slides about the mathematics of animation ([repo](https://github.com/winkerVSbecks/mathematics-of-animation)).\n- [Sketching with Math and Quasi Physics](https://kynd.github.io/p5sketches/index.html) - Beautiful and visual introduction to math and quasi physics.\n- [Gene Kogan: Perlin Noise](http://genekogan.com/code/p5js-perlin-noise/) - introduction to 2D and 3D perlin noise.\n- [Matrix Math and You](https://medium.com/@Zadvorsky/into-vertex-shaders-addendum-1-matrix-math-and-you-565a51094472) - High level introduction to matrices.\n- [Mathematical Symbols](http://www.rapidtables.com/math/symbols/Basic_Math_Symbols.htm) - List of all mathematical symbols and signs.\n- [The magnificent 2d matrix](http://ncase.me/matrix/) - Interactive tool to better understand transformation matrices.\n- [Game Dev Movement cheatsheet with examples](http://www.somethinghitme.com/2013/11/13/snippets-i-always-forget-movement/) - JavaScript math snippets for movement.\n- [Maths \u0026 trigonometry cheat sheet for 2D \u0026 3D games](https://gist.github.com/xem/99930986c5333125a13b0ea50600391f) - Maths cheat-sheet for 2D and 3D game-makers.\n- [Matrices for Creative Coding](https://www.youtube.com/watch?v=4k9wTfxfkJU\u0026list=PLxaZqnd-OQM7k2Gp3xu02VzExGKMKgqY2) - Introduction to matrices by Greg Tatum.\n- [Making Things With Maths](https://acko.net/tv/wdcode/) - Talk by Steven Wittens about bezier curves, procedural generation, physics engines and fractals.\n- [MyPhysicsLab](https://www.myphysicslab.com/) - Interactive real-time physics simulations, with formulas and code.\n- [Intuitive Math](https://intuitive-math.club/) - Explanations of fields like Linear Algebra and Geometry designed to help you develop a visual intuition for what is going on.\n- [L-systems](https://github.com/arendsee/lsystems) - A Haskell package for L-systems.\n- [Linear Interpolation](https://mattdesl.svbtle.com/linear-interpolation) - Introduction to linear interpolation (also known as mix/lerp).\n- [Practical use of Vector Math in Games](https://www.gamedev.net/articles/programming/math-and-physics/practical-use-of-vector-math-in-games-r2968/) - In-depth article on vectors for game math.\n- [Shepherding random numbers](https://inconvergent.net/2016/shepherding-random-numbers/) - Tiny guide to shepherding random numbers.\n- [Shepherding random grids](https://inconvergent.net/2016/shepherding-random-grids/) - Tiny guide to shepherding random grids.\n- [Shepherding random growth](https://inconvergent.net/2016/shepherding-random-growth/) - Tiny guide to shepherding random growth.\n\n## Machine learning • Computer Vision • AI\n\n- [ml4a](https://ml4a.net/) - Machine learning for artists.\n- [Keras.js](https://transcranial.github.io/keras-js/) - Run Keras models (tensorflow backend) in the browser, with GPU support.\n- [Tesseract.js](http://tesseract.projectnaptha.com/) - Pure JavaScript Multilingual OCR.\n- [Google ML](https://cloud.google.com/ml/) - Cloud machine learning by Google.\n- [TensorFlow](https://www.tensorflow.org/) - Open source software library for machine intelligence.\n- [ConvNetJS](http://cs.stanford.edu/people/karpathy/convnetjs/started.html) - Deep Learning in your browser.\n- [Wekinator](http://www.wekinator.org/) - Allows anyone to use machine learning.\n- [Machine Learning](https://github.com/CodingTrain/Machine-Learning) - Coding Train repo with links to machine learning resources.\n- [CreativeAi.net](http://www.creativeai.net/) - Space to share creative Ai projects.\n- [AI Playbook](http://aiplaybook.a16z.com/) - Ai microsite intended to help newcomers get started.\n- [Teachable Machine](https://github.com/googlecreativelab/teachable-machine) - Explore how machine learning works, live in the browser.\n- [TensorFlow.js](https://js.tensorflow.org/) - JavaScript library for training and deploying ML models in the browser and on Node.js.\n- [Hello TensorFlow](https://hello-tensorflow.glitch.me/) - Fully commented TensorFlow.js demo.\n- [ml5.js](https://ml5js.org/) - Friendly machine learning for the web.\n- [Model Zoo](https://modelzoo.co/) - Discover open source deep learning code and pretrained models.\n- [Runway](https://runwayapp.ai/) - Toolkit that adds artificial intelligence capabilities to design and creative platforms.\n- [Lobe](https://lobe.ai/) - Build, train, and ship custom deep learning models using a simple visual interface.\n- [ModelDepot](https://modeldepot.io/) - Platform for discovering, sharing, and discussing easy to use and pre-trained machine learning models.\n\n## Inspiration\n\n- [OpenProcessing](https://www.openprocessing.org/) - Algorithmic Designs Created with Processing, p5js and processingjs.\n- [Dwitter](https://www.dwitter.net/) - Social network for short JavaScript demos.\n- [Chrome Experiments](https://www.chromeexperiments.com/) - Showcase of web experiments written by the creative coding community.\n- [For your Processing](http://fyprocessing.tumblr.com/) - Projects and tutorials about Processing.\n- [Art From Code](http://www.artfromcode.com/) - Code sketches by Keith Peters.\n- [Generator.x](https://www.flickr.com/groups/generatorx/) - Flickr group about generative strategies in art \u0026 design.\n- [Generative Art](https://www.flickr.com/groups/generativeart/) - Flickr group about generative art.\n- [People You Should Follow on CodePen](https://github.com/nucliweb/People-You-Should-Follow-on-CodePen) - List of interesting people worth following.\n- [Raven Kwok](https://ravenkwok.tumblr.com/) - Tumblr by visual artist Raven Kwok.\n- [P5Art](http://p5art.tumblr.com/) - Really good collection of experiments in Processing.\n- [Echophon](http://echophon.tumblr.com/) - Tumblr with visual inspiration.\n- [Bees \u0026 Bombs](https://beesandbombs.tumblr.com/) - Tumblr with gifs by Dave.\n- [Folds2d](http://folds2d.tumblr.com/) - Tumblr with curves, surfaces, scalar and vector fields.\n\n## Events\n\n- [OFFF Festival](http://offf.barcelona/) - Digital design festival (_Online Flash Film Festival_).\n- [Gray Area Festival](http://grayareafestival.io/) - Creative coding, art and technology festival.\n- [Signal Festival](http://www.signalfestival.com/) - Showcase of light art and emerging technologies in Prague, the Czech Republic.\n- [Eyeo Festival](http://eyeofestival.com/) - Bring together creative coders, data designers and creators working at the intersection of data, art and technology.\n- [Mutek](http://www.mutek.org/en) - Organization dedicated to digital creativity in sound, music, and audio-visual art.\n- [Node](https://nodeforum.org/) - An open platform for the exchange on culture, arts and technology.\n- [Digital Design Days](http://www.ddd.it) - 3 day event offering conferences, workshops, digital showcases \u0026 installations.\n- [CODAME ART+TECH](http://codame.com/) - Projects and nonprofit events, to inspire through experience.\n- [NextArt Night](https://nextart.tech/) - Inspiring people through creative uses of tech.\n\n## Museums • Galleries\n\n- [ZKM — Zentrum für Kunst und Medien, Karlsruhe/Germany](https://zkm.de) - ZKM organizes exhibitions and events on the effects of media, digitization, and globalization.\n- [Ars Electronica Center, Linz/Austria](https://ars.electronica.art/center/) - Museum of the Future — a place where diverse blends of artistic genres, scientific domains and technological directions are displayed and processed.\n- [Technorama, Zurich/Switzerland](https://www.technorama.ch/en/home) - Technorama allows hands-on experiences of hundreds of natural phenomena and technology.\n- [Kate Vass Gallery - Zürich/Switzerland](https://www.katevassgalerie.com/) - Contemporary art gallery presenting works by international established, mid-career, and emerging artists focusing on photography and new technologies.\n- [Digital Art Museum - Berlin/Germany](http://dam.org) - Digital Art Museum is an **online** resource for the history and practice of digital fine art.\n- [NXT Museum - Amsterdam/Netherlands](https://nxtmuseum.com) - The first museum in the Netherlands dedicated to new media art.\n\n## Schools • Workshops\n\n- [Goldsmiths, UoL, MA Computational Art](https://www.gold.ac.uk/pg/ma-computational-arts/) - Graduate program in London which develops your arts practice through the expressive world of creative computation\n- [UAL Creative Computing Institute](https://www.arts.ac.uk/creative-computing-institute) - school in London working at the intersection of creativity and computational technologies\n- [School for Poetic Computation](http://sfpc.io/) - School in New York that explore the intersections of code, design, hardware and theory.\n- [Copenhagen Institute of Interaction Design](http://ciid.dk/) - Hosts a range of educational initiatives, most notably, the Interaction Design Programme and the CIID Summer School.\n- [Residencies, Fellowships, Summer Schools](https://docs.google.com/spreadsheets/d/1o__WKUBTHLoQX8pSRJsh0wMC8fCGzycQ0ezxe5CklxM/edit?usp=sharing) - Huge list of residencies, fellowships and summer schools around the world (Navigate with the bottom left tabs).\n\n## Blogs • Websites\n\n- [CreativeApplications.Net [CAN]](http://creativeapplications.net/) - Famous digital art blog.\n- [iquilezles.org](https://iquilezles.org) - Home of Íñigo Quílez, specialised in GLSL and math snippets.\n- [bit-101.com](http://www.bit-101.com/blog/) - Blog by Keith Peters, specialised in creative coding.\n- [ibreakdownshaders](http://ibreakdownshaders.blogspot.com.au/) - Explore the math behind shaders.\n- [adriancourrèges.com](http://www.adriancourreges.com/blog/) - Blog of software engineer Adrian Courrèges. Articles about game graphics studies etc.\n- [clicktorelease.com](https://www.clicktorelease.com) - Home of Jaume Sanchez Elias, with demos, talks, articles on WebGL and WebVR.\n- [syntopia](http://blog.hvidtfeldts.net/) - Blog about generative art and systems, by Mikael Hvidtfeldt Christensen.\n- [madebyevan.com](http://madebyevan.com/) - WebGL experiments and articles by Evan Wallace.\n- [songho.ca](http://www.songho.ca/) - Home of Song Ho Ahn, with a good collection of tutorials on OpenGL and math.\n- [simonschreibt.de](https://simonschreibt.de/) - Game art tricks, design tricks by Simon Schreibt.\n- [sighack.com](https://sighack.com/) - Blog about generative art algorithms and techniques, by Manohar Vanga.\n- [jsdo.it-archives](https://github.com/cx20/jsdo.it-archives) - Compilation of WebGL experiments including comparisons on WebGL frameworks and physics engine (oimo.js, cannon.js, ammo.js)\n- [WebAudio Weekly](https://www.webaudioweekly.com/) - Newsletter to know everything about the WebAudio API\n\n## Related\n\n- [Awesome opengl](https://github.com/eug/awesome-opengl) - Curated list of awesome OpenGL libraries, debuggers and resources.\n- [Awesome webgl](https://github.com/sjfricke/awesome-webgl) - Curated list of awesome WebGL libraries, resources and much more.\n- [Awesome canvas](https://github.com/raphamorim/awesome-canvas) - Curated list of awesome HTML5 canvas with examples, related articles and posts.\n- [Awesome audio visualization](https://github.com/willianjusten/awesome-audio-visualization) - Curated list about Audio Visualization.\n- [Awesome computer vision](https://github.com/jbhuang0604/awesome-computer-vision) - Curated list of awesome computer vision resources.\n- [Awesome visualization research](https://github.com/mathisonian/awesome-visualization-research) - Curated list of recommended research papers and other readings on data visualization.\n- [Awesome livecoding](https://github.com/lvm/awesome-livecoding/) - Curated list of livecoding languages and tools.\n- [Awesome graphics](https://github.com/ericjang/awesome-graphics) - Curated list of computer graphics tutorials and resources.\n- [Graphics resources](https://github.com/mattdesl/graphics-resources) - Curated list of graphic programming resources.\n- [Magic tools](https://github.com/ellisonleao/magictools) - Curated list of game development resources to make magic happen.\n- [Awesome public datasets](https://github.com/caesar0301/awesome-public-datasets) - Curated list of public available datasets, mostly free resources.\n- [Link collection of ray marching on the GPU](http://d.hatena.ne.jp/hanecci/20131005/p1) - Curated list from 2013.\n- [3D Machine Learning](https://github.com/timzhang642/3D-Machine-Learning) - A resource repository for 3D machine learning.\n- [Awesome creative technology](https://github.com/j0hnm4r5/awesome-creative-technology) - Curated list of Creative Technology groups, companies, studios, collectives and more.\n\n## License\n\n[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)\n\nTo the extent possible under law, [Terkel Gjervig](http://terkel.com) has waived all copyright and related or neighboring rights to this work.\n","funding_links":[],"categories":["Programming","Miscellaneous","Technical","HTML","Related lists","Awesome Lists","杂项","Uncategorized","General advice","HarmonyOS","Awesome","其他","4. Inspiration \u0026 Creative Techniques","Live Site:   [searchAwesome](https://search-awesome.vercel.app/)","Development","Other Related Awesome Lists","Related","Core","Other Lists","awesome-list","design","webgl","Bachelor-Level","📝 More Awesome Lists","Themed Directories","Source","**GENERAL RESOURCES**","Tabla de Contenido","Other Awesomes"],"sub_categories":["awesome-*","Performances, talks, etc","Performance events","Uncategorized","UI/UX Design","Windows Manager","React Components","网络服务_其他","Generative Art","Programming","Books","Articles • Tutorials","Svelte","TeX Lists","B.Sc.: Bonusliste","Miscellaneous","Other","Newsletters","Patents"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterkelg%2Fawesome-creative-coding","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterkelg%2Fawesome-creative-coding","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterkelg%2Fawesome-creative-coding/lists"}