Muffinman is a front-end developer who writes about creative coding, CSS and SVG experiments, and small web projects like Pulsar and Invaders.
HN commenters share their own Pulsar and Invaders creations, call the work fun, and one reports an XSS issue in Pulsar's code parameter.
Nice, just the other day I coded up some quick 2d shooter demo and realized I have no idea how to draw interesting sprites for it. What you're doing here with drawing the generated vector onto different sizes of grid is brilliant. A sort of structured pulsation. Same simple technique can be used for both "breathing" animation of a critter and for animating it into bigger, badder forms. Bravo.
At this point (actually before even writing the comment) If your blog had a RSS feed I'd have subscribed to it... but (at least according to my RSS plugin) it doesn't, so I fear I will miss out on your next inspiring writeups. Consider adding one, if you feel like it :-)
https://muffinman.io/invaders/#/size:15/main-seed:began-everybody-family/gap:0/split:3/line-thickness:0.25,0.1,0.51,1.19/color:today-accept-high/eyes:appropriate-rule-port/animate:true/flip:false/show-grid:false/debug:false is a favorite so far
Unfortunately, it was too easy to trigger XSS: https://muffinman.io/pulsar/?grid=classic&animate=scale&code=dD9jb3MuY29uc3RydWN0b3IoJ29ubWVzc2FnZT1lPT5wb3N0TWVzc2FcZ2Uoe2lkOmUuZGF0YS5pZCxlcnJvcjoiPG1ldGEgaHR0cC1lcXVpdj1yZWZyZXNoIGNvbnRlbnQ9MDsvL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25zLzUvNTcvRG9uJTI3dF9QYW5pY19CYWRnZS5qcGc%252BIn0pJykoKTow
It is really hard to make a correct sandbox in JS in general, without something like the Realms proposal [1]. Until that point you would have to be conservative to be safe.
[1] https://github.com/tc39/proposal-shadowrealm
https://muffinman.io/
I've been writing for a while now. Mostly front-end development, random experiments and creative coding.
My most popular post that was on the first page of HN earlier this year:
https://muffinman.io/blog/draw-svg-rope-using-javascript/
I'm pretty proud of my generative, pen plotted drawings:
https://muffinman.io/art/
And one of my favorites:
https://muffinman.io/blog/breaking-down-krypton/
Edit: Typo.
fun! https://muffinman.io/pulsar/?grid=classic&animate=scale&code=bWluKDEsbWF4KDAscG93KChzaW4oc3FydCh4LzYqeC82K3kvNip5LzYpKjMuMTQxNTkyNjUrdC8zLjE0MTU5MjY1KSsxKS8yLDIwKSkpKm1pbigxLG1heCgwLChwb3coYWJzKGF0YW4yKHkvNix4LzYpLzMuMTQxNTkrMSkvMisoY29zKHQvMy4xNDE1OTI2NSkrMSkvMiwxMDApLXBvdyhhYnMoYXRhbjIoeS82LHgvNikvMy4xNDE1OSsxKS8yKyhjb3ModC8zLjE0MTU5MjY1KSsxKS8yLTAuMDEsMTAwKSkpKQ%253D%253D
Got a fun little heart-shaped guy that morphs into a ditto when animated here, love the variety! https://muffinman.io/invaders/#/size:9/main-seed:officer-closely-forth/gap:0/split:0.25/line-thickness:0.13,0.27,0.61,0.73/color:kept-basket-goes/eyes:beside-tiny-nobody/animate:true/flip:false/show-grid:false/debug:false
This is really impressive.
If I get time, I would like to try compiling it to WASM. This would allow me to swap my robot poet’s native browser voice synthesis for it. Not sure if it is worth it, but it will be fun to play around with.
Edit: typo
[0] https://muffinman.io/bard/