From our sponsor: Ready to show your plugin skills? Enter the Penpot Plugins Contest (Nov 15-Dec 15) to win cash prizes!
Today we would like to share a fun interactive coloring concept with you. The idea is to simply drag a color from a color palette to a website mockup and color designated areas of it (like sections or texts). You might have encountered customization tools before, but we wanted to add some fun to this idea and make it enjoyable to use.
And this is how it can be used: you can drag a color from the color palette and drop it on any area that lights up with a blue outline, including text elements. Once the droplet that you are dragging gets dropped on a content area, a fun little Google Material like animation happens and the whole area gets filled with a colored circle. For that effect we use an SVG element that we create on the fly and then scale it up and fade it in with a CSS transition.
You can reset the whole thing by clicking on the droplet icon in the palette toolbar.
For the drag and drop functionality we are using the brilliant interact.js library.
Here is how you drag the droplet to the content or text elements of the website mockup:
Tiny break: 📬 Want to stay up to date with frontend and trends in web design? Subscribe and get our Collective newsletter twice a tweek.
The end result is the coloring of the area with a fun animation:
Have a look at this animated GIF:
And now, go and have some fun coloring 😉
We really hope you enjoy this little effect and find it inspiring.
Awesome as allways ! Thank’s Mary Lou
0___0
A.W.E.S.O.M.E!!!!
Nothing more to say, WOW! Thanks for step to the future.
GENIUS!!!!
I’ve literally never been more envious of someone’s ability to be consistently original, brilliantly technical and amazingly creative. Mary, Thank you! This is epic. You’re an inspiration to me and all the front end developers I’ve ever worked with.
That’s pretty cool. Could work with font sizes too I guess? Why aren’t you building site tools like this for some coin???
Thank you all for your kind feedback 🙂 I’m really happy you like it 🙂 Cheers, ML
Simply incredible!!,
Just amazing. Can see a freelancer using this for initial branding meetings. Thanks a lot.
Incredible! A question though – what framework was used to create the demo HTML? I notice it’s RWD and would have been silly to custom code that just for this demo. Or does the developer have a standard site they have created that they always use for Codrops demos?
Thanks!
OMG! It’s amaziing 🙂 Thanks for sharing!
Omg! This is so awesome!!!!
mary, make me your slave. seriously
Another great inspirational article, thank you!
Amazing 🙂
Would it be possible to drop in images instead of colors? Could someone point me in the right direction to getting that working?
I have been in the world
Amazing as always. When tympanus.net makeover will get over?
Great work… Amazing 🙂
Your consistent high-quality work is inspirational. Thanks for sharing.
OH.MY.GOD!
That was awesome.I don’t know how long it’ll take to be such a good designer and developer but i wanna be like you…SOON!
Thats very impressive. Top job.
Amazing. We love to use color pickers in WP Themes, but this is so much simpler in terms of usability. Thank you for the inspiration!
Incredible!
Amazing effect, well done! Might end up using something based on this in next project, really nice (:
OMG I TOTALY LOVE THIS!
just played 30minutes atleast with dropping colors xD
Awesome Work! SuperLikeit!! Cheers!
Mary Lou, how to be awesome like you? How you come to this stage? You’re THE BEST.
Impressive work!
Wow, great idea!
wow!!! what books you read, so that you know your job
It’s awesome, Someday I hope to be like you, you love what you do and show it with your creations and best of all, they share what they know without wanting anything in return, do not know how much I admire: D
Is there any callback function after droping a color on paint area that returns color code and dropped area id . So in server I can save this meta data.
Looking at the interact.js docs it seems to support a few different events when dropping.
dropactivate, dropdeactivate, dragenter, dragleave, dropmove, drop
.Using these events you could send a save request to your server.
interact(dropTarget) .dropzone({ ondrop: function (event) { // send request to server here } })
Hopefully that helps.
It does, thanks a lot Josh !
*Jaw Drop
Woow , just woow !!
I will dig it deeper and hope it will applicable for my demo themes.
Thanks !!
:-))
WOAW…freakking awesome. This just takes codrops to the next lvl. Great work Mary. Keep it up !
This is a really slick idea that I see the postential to go beyond colors and the web. I could see that interaction being used on something like those Coca-Cola Freestyle machines to potentially make the experience quicker & easier. It seems to take people forever to use them, and large lines tend to form which cause traffic issues in the restaurants that have them.
That is really fun. Thank you for this. This is a pretty amazing way to create a website that would allow the user to customize their experience in a fun and interactive way! (Maybe as a way to customize a WordPress theme). Thank you for this.
Hi there,
Its an awesome feature but I believe that you have to improve it more by adding some more drag and drop options.
Thanks
I’d love to see a tutorial on building a simple edit in place.
Very nice effects used for this demo and the whole concept is very fresh. Future update to include a color chooser/picker to add more colors or pull from a library like Kuler maybe.
Very nice and attractive coloring concept.
This is probably the best demo if I’ve seen on this site so far. And damn, you have A LOT of awesome demos. It’s really impressive how you guys keep pumping high quality content without ever “burning out”.
Not 100% good in practice but super cool and fun to interact with 😀
wonderfull idea and well executed!!! Awesome work Mary, you a greek god when it comes to coding 🙂
hello good work but is it possible to add to a existin websote so the users can select the colors????????
Awesome.!
Thanks for sharing.
very nice and atractive
Nice article!
It is a very cool and interesting demo. i think it would be fun to work with colors.