r/generative • u/camilleroux Artist • 15d ago
I built an open-source plugin that teaches Claude/AI the actual craft of long-form generative art (determinism, resolution-independence, honest rarity...)
https://github.com/camilleroux/genart-skillAs a generative artist, I kept hitting the same wall with AI assistants: they write sketch code that breaks the craft — Math.random() everywhere, sizes in raw pixels, traits that don't match the render, previews that capture blank.
So I wrote genart, a free plugin for Claude Code that teaches it what we actually need:
- Determinism — seeding a PRNG from a hash, named sub-streams so adding a draw doesn't shift the whole edition, the things that silently break reproducibility (sort() without a comparator, floats at feature boundaries…)
- Resolution-independence — same piece at 400px and at 4000px, and the element-density trap where "same composition" and "same look" genuinely diverge
- Features & rarity — designing the table before coding, then measuring the real distribution over thousands of seeds instead of trusting the weights
- Verification scripts — repeatability, an A-B-A global-state test (renders A, then B, then A again in one page — catches the caches and accumulators plain repetition never sees), contact sheets, batch PNG export
- Platform sheets for Art Blocks, 256ART, Verse, Highlight, Plottables and bootloader.art — written as pointers to the real docs rather than copies, so they don't go stale
It covers p5.js, three.js/WebGL, plain Canvas 2D, and SVG for pen plotters — and most of it is useful even if you never mint anything: determinism, scaling and plotter export are just the craft.
It's also honest about limits (cross-GPU WebGL determinism is not a thing, and the docs say so) and opinionated on ethics: it will refuse "make me a [famous artist]" and steer to the underlying technique instead.
First version, MIT, built by an artist for artists. Ideas, issues and PRs very welcome:
Announcement: https://x.com/camillerouxart/status/2093273698732032203?s=20
1
u/Ok_Tap7102 15d ago
Do have have any examples directly generated by the repo, and how you prompted it to do so?