I would suggest checking their github repo[1] and seeing the examples from the book “nature of code” they are astonishing with a shitload of them ! Same with “generative design”<p>[1] <a href="https://github.com/nannou-org/nannou/tree/master/nature_of_code">https://github.com/nannou-org/nannou/tree/master/nature_of_c...</a>
For those who are interested in creative coding and Rust, especially the sound/audio/music related work, you can have a look on Glicol:<p><a href="https://glicol.org/" rel="nofollow">https://glicol.org/</a><p><a href="https://github.com/chaosprint/glicol">https://github.com/chaosprint/glicol</a><p>A music live coding language and a DSP library written in Rust.
Nannou talks about control of lasers, what would be a way to learn and get a cheap version of a laser beam I could use at home? Or maybe can I use that to control some light projections? I'm not interested in a full projector aimed at a while wall but was more wondering if I could somehow project some satellite movement on my living room walls and ceiling. I remember in Amsterdam there are some "immersive" light shows in Micropia where you see bacteria floating around and in the floor. Also shameless plug, I bridged Alacritty with Nannou so that one can use nannou primitives as alacritty "background" with animations <a href="https://github.com/sebosp/chartacritty">https://github.com/sebosp/chartacritty</a>
Rust is one of the more frustrating languages to dabble in. Usability is explicitly not a top priority. I can't imagine suggesting a rust based project to someone who wasn't already a fairly proficient coder.
I was expecting it to be like P5 but worse (why would you use Rust for that kind of coding?? do I actually care about memory safety in my sketches?) Shockingly the code looks totally reasonable! Im very impressed.<p>I guess there is a lot of copy happening under the hood (cf the source for Draw) but the result is a very straightforward syntax. I might give it a try instead of going back to P5.
The example code for drawing a circle felt warmly reminiscent of SwiftUI.<p>draw.ellipse()
.color(STEELBLUE)
.w(300.0)
.h(200.0)
.x_y(200.0, -100.0);<p>This seems promising! The creative coding folks I know mostly use WebGL which is obviously a way, way less user friendly syntax, though the tooling itself is much simpler and available. I’ll also note that the majority of the “best” creative coders I’ve met (biggest online following, largest shows) were not SWEs and generally didn’t code much outside of their preferred creative environment.<p>All that to say that the other commenters are right, and that what is trivial to us (build and run a rust project) is a multi day affair for the technical non-programmer.<p>I wonder if the author would consider shipping a desktop app with a preview window, simple text editor, and play button. All the pieces are obviously there, it’s just be a bit of a pain in the ass supporting three platforms and certainly less fun that working on the library itself :)
This is a really cool project, named after a beautiful Aphex Twin song[1] (mentioned in their about: <a href="https://www.guide.nannou.cc/why_nannou.html" rel="nofollow">https://www.guide.nannou.cc/why_nannou.html</a>)<p>[1] <a href="https://youtube.com/watch?v=A-Pkx37kYf4">https://youtube.com/watch?v=A-Pkx37kYf4</a>
This seems cool! Would be neat to have some kind of feature/performance comparison with processing, which I'd guess is the introduction to creative coding for a lot of people.
Surprised to see this kind of project in Rust but it looks interesting.<p>Cannot resist plugging a Nim wrapper for p5js (although it’s a bit early stage), in case other are interested in doing p5/processing stuff in a niche but fun (and easy to pick up) language: <a href="https://github.com/pietroppeter/p5nim">https://github.com/pietroppeter/p5nim</a>
For those who are starting to learn creative coding from p5js/Processing like me, this framework can appear quite challenging. P5js and Processing are designed to smooth the learning curve of programming for designers and artists without a CS background. Nannou looks more like it's designed for those who already have experience in creative coding but are looking to achieve higher performance with their sketches.<p>It's worth taking a look at OPENRNDR, which is a framework based on Kotlin. Personally, I think it achieves a good balance between performance and accessibility.<p>OPENRNDR: <a href="https://openrndr.org/" rel="nofollow">https://openrndr.org/</a>
I interviewed an artist who uses nannou to make art daily, back in 2021:<p><a href="https://blog.abor.dev/p/making-generative-art-with-rust" rel="nofollow">https://blog.abor.dev/p/making-generative-art-with-rust</a>
The most important feature of a tool meant to support creativity is <i>interactivity</i>. Last time I checked, Rust didn't have a REPL, didn't support live-patching, and didn't have fast compile times - all features critical for interactivity. Has something changed since then?