I’ve got some experience using haml (+sass) on rails projects. I recently started using them with blueprintcss – the only thing I did was transform blueprint.css into a sass file, and started coding from there. I even have a rails generator that includes all this by default.
It seems that Compass does what I do, and other things. I’m trying to understand what those other things are – but the documentation/tutorials weren’t very clear.
These are my conclusions:
- Compass comes with built-in sass mixins that implement common CSS idioms, such as links with icons or horizontal lists. My solution doesn’t provide anything like that. (1 point for Compass).
- Compass has several command-line options: you can create a rails project, but you can also “install” it on an existing rails project. A rails generator could be personalized to do the same thing, I guess. (Tie).
- Compass has two modes of working with blueprint: “basic” and “semantic” usage. I’m not clear about the differences between those. With my rails generator I only have one mode, but it seems enough. (Tie)
- Apparently, Compass is prepared to use other frameworks, besides blueprint (e.g. YUI). I could not find much documentation about this, and I’m not interested on it anyway – blueprint is ok for me (Tie).
- Compass’ learning curve seems a bit stiff and the documentation seems sparse. Learning could be a bit difficult. On the other hand, I know the ins and outs of my own system and can use it right away. (1 point for my system).
With this analysis, I’m hesitant to give Compass a try.
Is my analysis correct? Are Am I missing any key points, or have I evaluated any of these points wrongly?
Compass looked like a great solution for me as well, but after trying it on a project I didn’t really see the great advantage of using it for me. Like you, I’m just fine with blueprint, and I didn’t see the need to add yet another layer on top of haml/sass.
I eventually stripped the compass from that project and just go with a sass version of the blueprint CSS files, and go from there. I store any custom/additional styles in a separate sass file and that’s it. No need for compass or anything like that if you just want to keep it simple.