Hacker News new | comments | show | ask | jobs | submit login
Show HN: An app to let you create a composition like Piet Mondrian [video] (youtube.com)
9 points by dereklimbus 11 months ago | hide | past | web | favorite | 4 comments

direct link: https://composition.dereklimbus.com/

Add a button to paint with the color white, to fix mistakes. And perhaps another button to clear the image to start over (with a confirmation).

I still feel that the method to deselect the current block and start a new block is weird. It's very different from the usual methods (aka paintbrush). (It may be good for this particular app, but it's different.)

Thanks for the advice. Since this is more like a fun experiment than a product, I tried to keep it minimal and ideal. My idea is that everything is composed of dots, from there, we have lines and planes. Therefore, you're basically connecting dots on the canvas. In terms of color, white is more like being null, so there's no color as a null. If you color some dots by mistake, just unselect the color you use like unselecting dots.

I'm learning Redux now, so I'll integrate it with Redux some time. I do feel it's weird that you need to move your mouse over the dots to deselect, so I'll think about that when I change my code.

After a few tries, I understood how to unpaint some parts and make them white again. It's not intuitive at all. Just add a white color button.

I still think the selection is also not intuitive, but I didn't play too much with your project. Perhaps your selection method is better. Follow your instinct but try it with a few more users. (As an alternative, show the expanded selection automatically when the user moves the mouse, but change the corner only when the user clicks.)

I just remember that another reason why I don't have white paint is about mobile layout. If you check the 320px-width mobile really quick, you will find there is no space for extra paint, because I need to keep the paint large enough to be touchable. But still, your point is valid, so I'll consider that in the next version.

But your second point is brilliant! Really appreciated!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact