CSS Color Palette Extractor

There are already many web apps that extract colors from CSS. But none of them seemed to do what I need them to do. So I built my own.

Twitter Bootstrap extracted palette
Twitter Bootstrap extracted palette
Facebook extracted palette
Facebook extracted palette

My goal was to create a tool that would help me consolidate the palette of an ever growing CSS. To achieve this goal, I needed a tool that can:

  • extract all colors from the CSS code. Most extractors rely on regular expression to perform this task. It may work for most cases, but they tend to fail with rgba or named values.
  • order colors in a sensible way. I want colors on one side and greyscale on another. I also want colors ordered by hue. Ordering hex values by alphabetical order doesn’t make sense.
  • roughly show how much a color is used. This way, I know that lesser used colors might be merged with dominant colors. Obviously, more occurrences in CSS doesn’t mean that the color will be more present on the website. But that’s better than nothing.

The result is CSS Color Palette Extractor, a pure JS app that does what I need. You can try the demo and fork it on github.

On the technical side, the app uses the great CSS parser written by Daniel Glazman to extract color values. It also includes code from Andrew Brehaut for color management/conversion. My own code is a bit rough but does the job. There are a few known issues. I haven’t found how to make the parser work with media queries. If you’re doing responsive design, simply extract medium per medium. Also, my app cannot extract colors from gradient backgrounds.

It’s sometimes nice to step back from code and analyze what’s going on. I hope that CSS Color Palette Extractor will help you to do just that. If you want to use the code, feel free to fork it on github.

Why your Dropbox alternative is not enough

Projects such as lipsync or SparkleShare are often considered as Dropbox alternative, especially by people who do not actually use Dropbox.

Unfortunately, we’re still not there yet.

Here’s why: most people usually always think of Dropbox as a syncing solution. But it’s more than that. Dropbox can:

I really hope that those project catch up, but until then, I won’t consider them as alternatives.

Soirée Performance Web le 21 juillet 2010 chez Octo

Éric Daspet organise une soirée sur le sujet des Performances Web le 21 juillet 2010. Sponsorisée par le cabinet de conseil Octo, la soirée aura lieu dans ses locaux à partir de 19h. Stoyan Stefanov, qui fait partie de l’équipe Exceptional Performance de Yahoo! fera une présentation de plusieurs techniques avancées pour améliorer la performance des vos sites Web. La présentation sera suivie d’une séance de questions/réponses plus libre. L’inscription est gratuite, faites passer le mot!

Si vous êtes intéressé par cet événement, tous les détails sont disponibles sur cette page : Webperf User Group France, 21 juillet 2010 Paris