| ▲ | Moss is a pixel canvas where every brush is a tiny program(moss.town) | ||||||||||||||||||||||
| 117 points by smusamashah 12 hours ago | 13 comments | |||||||||||||||||||||||
| ▲ | graypegg 6 minutes ago | parent | next [-] | ||||||||||||||||||||||
That's such a neat idea! It's like a paintable version of https://www.shadertoy.com Is there a way to share brushes in the app/a brush sharing gallery? For sharing, I can see the "weekly" section from the homepage, which looks to be a weekly art prompt and everyone's go at it, which is really fun! But for the more artistically challenged (myself), it'd probably want to share a brush on it's own haha | |||||||||||||||||||||||
| ▲ | heyitsgarrett 5 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
Oh thanks for sharing this! I love asesprite, procreate, pico8 and had this idea for programmable brushes bonking around my head for years now. Recently took some time between projects to put it together. MOSS is a drawing toy where each brush is a tiny script that knows about every pixel on the canvas. You define how it paints with noise, randomness, patterns, stroke speed, pressure, and every touch executes the code. So you can have a brush that scatters pixels like a real spray can or one that stamps shapes that mutate as you drag. Or perspective lines that actually converge. Or a fill bucket with smart gap awareness (I called it "Fill of my Dreams" and added to the brush list). Happy to share brush code in the comments or explore ideas together. There's a (?) in the bottom right toolbar with API docs, and a prompt copy at the bottom if you wanted to work with the API through an agent. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | Klonoar 3 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
This is amazing. Could you add support for holding `Shift` to keep your line straight while painting, ala MSPaint? | |||||||||||||||||||||||
| ▲ | RodgerTheGreat 3 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
Moss looks much more general and powerful, but Decker has a similar mechanism for custom brush behavior; here's an interactive tutorial with a variety of examples, for comparison: http://beyondloom.com/decker/brushes.html | |||||||||||||||||||||||
| ▲ | od0 3 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
This is the most fun I’ve had drawing with pixels since I was a kid | |||||||||||||||||||||||
| ▲ | mpalmer 3 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
Absolutely lovely design, thanks for the share and the inspiration | |||||||||||||||||||||||
| ▲ | adammarples 2 hours ago | parent | prev | next [-] | ||||||||||||||||||||||
In what way is a brush a program? How do I program it? I've spent 5 minutes and clicked on every single thing I can find but I give up looking. | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | olivia-banks 2 hours ago | parent | prev [-] | ||||||||||||||||||||||
This is a seriously fun tool. Bravo! | |||||||||||||||||||||||