SlideShare a Scribd company logo
Authoring Stylesheets
       With Sass and Compass




Monday, November 29, 2010
Chris Eppstein
       Software Architect for Caring.com
       Creator of Compass
       Member of Sass Core Team




                                                                         Follow
                            You’re there for them. We’re here for you.
                                                                         @chriseppstein
Monday, November 29, 2010
Sencha Touch Uses Sass & Compass




Monday, November 29, 2010
Hold on to Your Hat
       We’ve got a lot to learn.

       Stylesheets have grown up.




Monday, November 29, 2010
Today
       •Learn the Sass Syntax and features
       •Learn your way around a Compass project
       •Overview of Compass Libraries
       •Style a webpage in minutes
       •Discover a new approach to design



Monday, November 29, 2010
CSS3
       33 New Selectors
       120+ New Properties
       3 New @-rules
       Enhanced Media Queries




Monday, November 29, 2010
CSS3
       More Sophisticated
       More Powerful
       More Complex




Monday, November 29, 2010
CSS3
       More Sophisticated
       More Powerful
       More Complex




                      No new Syntax To Manage Complexity.
Monday, November 29, 2010
Sass & Compass
       A workhorse for CSS developers.




                            Simplifying CSS Using Abstractions.
Monday, November 29, 2010
What is Sass?
       What is Compass?




Monday, November 29, 2010
Sass Features
      • Variables
      • Nested Rules
      • Mixins
      • Selector Inheritance
      • Colors
      • Math
      • Conditionals
      • Server-side Imports
      • Output Formatting & Compression
      • Silent Comments
      • Optional Whitespace- Aware Syntax



Monday, November 29, 2010
Sass Syntax




                            Sass   CSS

Monday, November 29, 2010
Sass: Variables




                            Sass   CSS

Monday, November 29, 2010
Sass: Nested Rules




                            Sass   CSS

Monday, November 29, 2010
Sass: Mixins




                            Sass   CSS

Monday, November 29, 2010
Mixins: Write Your Own




Monday, November 29, 2010
Sass: Selector Inheritance




                            Sass   CSS

Monday, November 29, 2010
Sass: Colors




                            Sass   CSS

Monday, November 29, 2010
Sass: Colors
       Representations          Functions
        • hex                   • mix
        • rgb() / rgba()        • darken/lighten
        • hsl() / hsla()        • transparentize/opacify
        • Named Colors          • compliment/adjust-hue
                                • saturate/desaturate/
                                    grayscale
                                •   accessors & more




http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html
Monday, November 29, 2010
Sass: Mathematical Expressions




                            Sass   CSS

Monday, November 29, 2010
Sass: Numeric Units
            •Handles any unit               Examples
            •Allows complex units in
            intermediate forms

            •Understands compatible units




Monday, November 29, 2010
Sass: Conditionals




Monday, November 29, 2010
Sass: Server Side Imports


                    _sidebar.scss




                            screen.scss   screen.css
Monday, November 29, 2010
Sass: Output Formats
                                       Compact


                                  Compressed




               Nested       Expanded
Monday, November 29, 2010
Sass: Alternate Syntax




Monday, November 29, 2010
Sass: Alternate Syntax




Monday, November 29, 2010
Questions about Sass?




Monday, November 29, 2010
                            ?
CSS is 14 years Old
       We’ve developed Some Best
       Practices




                            OOCSS

Monday, November 29, 2010
CSS Frameworks
       A Codification of Best Practices




                            OOCSS

Monday, November 29, 2010
Compass
       A Real Stylesheet Framework




                Not Frameworks
                    OOCSS

Monday, November 29, 2010
Compass
       A Stylesheet Authoring Framework

             • Project Context
             • Core Library
             • Semantic Frameworks
             • Extensions
             • Community




Monday, November 29, 2010
Project Context
       Create a new project in seconds
      compass create <project> --using <framework>




Monday, November 29, 2010
Project Context
       Compass will Watch for changes and compile automatically

                             compass watch




Monday, November 29, 2010
If you need Help
                            compass help
       Self documenting




Monday, November 29, 2010
If you need Help
      Online Documentation




Monday, November 29, 2010
If you need Help
       The Community


                 http://groups.google.com/group/compass-users
                      http://groups.google.com/group/haml




Monday, November 29, 2010
Projects are more than just Stylesheets
            •Images
            •Fonts
            •JavaScripts




Monday, November 29, 2010
Where are your Assets?




   assets.scss




Monday, November 29, 2010
Relative Assets:                              config.rb

   No Web Server Required



                            assets.scss




                                          assets.css

Monday, November 29, 2010
Absolute Assets:
                                                 config.rb
   Web Server Required



                            assets.scss




                                          assets.css

Monday, November 29, 2010
Set an Application                             config.rb

  Path Context



                            assets.scss




                                          assets.css

Monday, November 29, 2010
Image Host
   (CDN/S3/etc)                           config.rb




                            assets.scss




                                          assets.css


Monday, November 29, 2010
Use Asset Hosts
                                          config.rb




                            assets.scss




                                          assets.css

Monday, November 29, 2010
In your CSS?!




      Wikipedia Reference   Compass Documentation
Monday, November 29, 2010
Asset Helpers
       stylesheet-url - url to assets stored in the CSS directory
       font-url - url to assets in the font directory
       image-url - url to assets in the images directory
       inline-image - embed an image
       inline-font-files - embed a font file




  http://compass-style.org/docs/reference/compass/helpers/
                            urls/

Monday, November 29, 2010
CSS3
       It’s pretty cool.
       But it’s still a work in progress:

       Vendor prefix hell
       Incompatible syntaxes
       Graceful degradation / progressive
       enhancement considerations
       Buggy implementations




Monday, November 29, 2010
Prefix Hell




                   Really?            Simple.
                 Who does this?   Like it Will Be.
                  What a Pain.      Only now.
Monday, November 29, 2010
Incompatible Implementations




      http://compass-style.org/docs/reference/compass/css3/
                             gradient/
Monday, November 29, 2010
Compass CSS3 Modules
       Updated for you as browsers develop
       Background Clip      Font Face
       Background Origin    Gradient
       Background Size      Inline Block
       Border Radius        Opacity
       Box                  Text Shadow
       Box Shadow           Transform
       Box Sizing           Transition
       Columns




      http://compass-style.org/docs/reference/compass/css3/
Monday, November 29, 2010
Compass Utilities
       Resets
       Sticky Footer
       Clearfix
       Cross browser best practices: floats, mins
       Links: hover-link, link-colors, unstyled-link
       Lists: pretty bullets, no-bullets, horizontal lists, inline lists
       Sprites
       Tables: striping borders & basic styling
       Text: ellipsis, no-wrap, text-replacement




  http://compass-style.org/docs/reference/compass/utilities/
Monday, November 29, 2010
Mixin Library
       A La Carte
       Customizable




Monday, November 29, 2010
Browser Support
       All Modern Browsers
       Firefox 2
       IE6 & 7
       Exceptions are noted in the docs.
       Compass ♥’s progressive enhancement




Monday, November 29, 2010
The Zen of Sass
           ‣ Beautiful Markup
           ‣ Stylesheets that you can
             visualize
           ‣ Keep presentation in your
             stylesheets.
           ‣ Find your own code style
           ‣ Build your own framework
           ‣ Don’t use what you don’t like




Monday, November 29, 2010
Susy
       Created by an Eric Meyer for Compass
       Uses Natalie Down’s CSS Systems approach to grids.
       Can be elastic, fixed, or fluid.
       Vertical Rhythm
       Utilities




                                                 http://susy.oddbird.net/
Monday, November 29, 2010
Some Great Extensions
       Lemonade - Sprite Generator
       960.gs - The 960 grid system
       ported to Sass
       Lightboxes - Pure CSS lightboxes
       Slideshows - Pure CSS slideshows
       Fancy Buttons - Pure CSS Button
       Generator




      Building an Extension is EASY!

Monday, November 29, 2010
My Teammates
       Nathan Wiezenbaum (@nex3) - Sass & Haml
       Eric Meyer (@eriiicam) - Compass, Susy
       Brandon Mathis (@imathis) - Compass, Fancy Buttons




Monday, November 29, 2010
Compass is Charityware


            If you use Compass & Sass and they make your life better, please
            help make someone else’s life better by making a tax-deductible
            donation to the United Mitochondrial Disease Foundation.
            http://umdf.org/compass




Monday, November 29, 2010
Questions about Compass?




Monday, November 29, 2010
                            ?
Photo Credits
                        http://www.flickr.com/photos/mistressb/3961765594/


                        http://www.flickr.com/photos/katietegtmeyer/68401475/


                        http://www.flickr.com/photos/empics/2846078511/


                        http://www.flickr.com/photos/7202153@N03/3361299763/


                        http://www.flickr.com/photos/euart/282104427/

Monday, November 29, 2010
Similar Projects
       Less (Ruby, Javascript)
       CSSca old (PHP)
       Turbine (PHP)
       xCSS (PHP)
       CleverCSS (Python)
       Mechanical CSS (PHP)
       HSS (Neko)




Monday, November 29, 2010

More Related Content

Similar to SASS: The Next Wave in Styling and Theming

Sencha Touch for the Mobile Web
Sencha Touch for the Mobile WebSencha Touch for the Mobile Web
Sencha Touch for the Mobile Web
Sencha
 
Atlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass Topics
Atlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass TopicsAtlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass Topics
Atlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass Topics
Eric Sembrat
 
The Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital CampThe Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital Campcanarymason
 
Syntactically awesome stylesheets (Sass)
Syntactically awesome stylesheets (Sass)Syntactically awesome stylesheets (Sass)
Syntactically awesome stylesheets (Sass)
Tahmina Khatoon
 
Non-Relational Databases & Key/Value Stores
Non-Relational Databases & Key/Value StoresNon-Relational Databases & Key/Value Stores
Non-Relational Databases & Key/Value Stores
Joël Perras
 
Smart CSS theming with Sass and Compass
Smart CSS theming with Sass and CompassSmart CSS theming with Sass and Compass
Smart CSS theming with Sass and Compass
Mihaela
 
ActiveRecord 2.3
ActiveRecord 2.3ActiveRecord 2.3
ActiveRecord 2.3
Reuven Lerner
 
SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!
SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!
SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!
Stefan Bauer
 
Intro to Sass for WordPress Developers
Intro to Sass for WordPress DevelopersIntro to Sass for WordPress Developers
Intro to Sass for WordPress Developers
Suzette Franck
 
Getting Sassy with CSS
Getting Sassy with CSSGetting Sassy with CSS
Getting Sassy with CSS
Julie Cameron
 
Sass: An Introduction
Sass: An IntroductionSass: An Introduction
Sass: An Introduction
Gregory Borodaty
 
Sass:-Syntactically Awesome Stylesheet by Shafeeq
Sass:-Syntactically Awesome Stylesheet by ShafeeqSass:-Syntactically Awesome Stylesheet by Shafeeq
Sass:-Syntactically Awesome Stylesheet by Shafeeq
DignitasDigital1
 
BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12
ucbdrupal
 
Evolution of CSS
Evolution of CSSEvolution of CSS
Evolution of CSS
MadonnaLamin1
 
Unobtrusive CSS
Unobtrusive CSSUnobtrusive CSS
Unobtrusive CSS
John Hwang
 
Creating Lifelike Designs with CSS3
Creating Lifelike Designs with CSS3Creating Lifelike Designs with CSS3
Creating Lifelike Designs with CSS3
Meagan Fisher
 
CSS Meetup at The Hive in Rock Hill, SC - 2014
CSS Meetup at The Hive in Rock Hill, SC - 2014CSS Meetup at The Hive in Rock Hill, SC - 2014
CSS Meetup at The Hive in Rock Hill, SC - 2014
John Rouda
 
Revamp Your Stylesheet
Revamp Your StylesheetRevamp Your Stylesheet
Revamp Your Stylesheet
Gary Homidas
 
Css to-scss
Css to-scssCss to-scss
Css to-scss
frontendne
 
Sencha Touch Workshop
Sencha Touch WorkshopSencha Touch Workshop
Sencha Touch Workshop
David Kaneda
 

Similar to SASS: The Next Wave in Styling and Theming (20)

Sencha Touch for the Mobile Web
Sencha Touch for the Mobile WebSencha Touch for the Mobile Web
Sencha Touch for the Mobile Web
 
Atlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass Topics
Atlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass TopicsAtlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass Topics
Atlanta Drupal User's Group - April 2015 - Sasstronauts: Advanced Sass Topics
 
The Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital CampThe Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital Camp
 
Syntactically awesome stylesheets (Sass)
Syntactically awesome stylesheets (Sass)Syntactically awesome stylesheets (Sass)
Syntactically awesome stylesheets (Sass)
 
Non-Relational Databases & Key/Value Stores
Non-Relational Databases & Key/Value StoresNon-Relational Databases & Key/Value Stores
Non-Relational Databases & Key/Value Stores
 
Smart CSS theming with Sass and Compass
Smart CSS theming with Sass and CompassSmart CSS theming with Sass and Compass
Smart CSS theming with Sass and Compass
 
ActiveRecord 2.3
ActiveRecord 2.3ActiveRecord 2.3
ActiveRecord 2.3
 
SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!
SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!
SPS Oslo - Stop your SharePoint CSS becoming a di-sass-ter today!
 
Intro to Sass for WordPress Developers
Intro to Sass for WordPress DevelopersIntro to Sass for WordPress Developers
Intro to Sass for WordPress Developers
 
Getting Sassy with CSS
Getting Sassy with CSSGetting Sassy with CSS
Getting Sassy with CSS
 
Sass: An Introduction
Sass: An IntroductionSass: An Introduction
Sass: An Introduction
 
Sass:-Syntactically Awesome Stylesheet by Shafeeq
Sass:-Syntactically Awesome Stylesheet by ShafeeqSass:-Syntactically Awesome Stylesheet by Shafeeq
Sass:-Syntactically Awesome Stylesheet by Shafeeq
 
BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12
 
Evolution of CSS
Evolution of CSSEvolution of CSS
Evolution of CSS
 
Unobtrusive CSS
Unobtrusive CSSUnobtrusive CSS
Unobtrusive CSS
 
Creating Lifelike Designs with CSS3
Creating Lifelike Designs with CSS3Creating Lifelike Designs with CSS3
Creating Lifelike Designs with CSS3
 
CSS Meetup at The Hive in Rock Hill, SC - 2014
CSS Meetup at The Hive in Rock Hill, SC - 2014CSS Meetup at The Hive in Rock Hill, SC - 2014
CSS Meetup at The Hive in Rock Hill, SC - 2014
 
Revamp Your Stylesheet
Revamp Your StylesheetRevamp Your Stylesheet
Revamp Your Stylesheet
 
Css to-scss
Css to-scssCss to-scss
Css to-scss
 
Sencha Touch Workshop
Sencha Touch WorkshopSencha Touch Workshop
Sencha Touch Workshop
 

More from Sencha

Breathe New Life into Your Existing JavaScript Applications with Web Components
Breathe New Life into Your Existing JavaScript Applications with Web ComponentsBreathe New Life into Your Existing JavaScript Applications with Web Components
Breathe New Life into Your Existing JavaScript Applications with Web Components
Sencha
 
Ext JS 6.6 Highlights
Ext JS 6.6 HighlightsExt JS 6.6 Highlights
Ext JS 6.6 Highlights
Sencha
 
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
Sencha
 
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha
 
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App TestingSencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha
 
Sencha Roadshow 2017: What's New in Sencha Test
Sencha Roadshow 2017: What's New in Sencha TestSencha Roadshow 2017: What's New in Sencha Test
Sencha Roadshow 2017: What's New in Sencha Test
Sencha
 
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha
 
Sencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
Sencha Roadshow 2017: Modernizing the Ext JS Class System and ToolingSencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
Sencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
Sencha
 
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
Sencha
 
Sencha Roadshow 2017: Mobile First or Desktop First
Sencha Roadshow 2017: Mobile First or Desktop FirstSencha Roadshow 2017: Mobile First or Desktop First
Sencha Roadshow 2017: Mobile First or Desktop First
Sencha
 
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and BeyondSencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
Sencha
 
Leveraging React and GraphQL to Create a Performant, Scalable Data Grid
Leveraging React and GraphQL to Create a Performant, Scalable Data GridLeveraging React and GraphQL to Create a Performant, Scalable Data Grid
Leveraging React and GraphQL to Create a Performant, Scalable Data Grid
Sencha
 
Learn Key Insights from The State of Web Application Testing Research Report
Learn Key Insights from The State of Web Application Testing Research ReportLearn Key Insights from The State of Web Application Testing Research Report
Learn Key Insights from The State of Web Application Testing Research Report
Sencha
 
Introducing ExtReact: Adding Powerful Sencha Components to React Apps
Introducing ExtReact: Adding Powerful Sencha Components to React AppsIntroducing ExtReact: Adding Powerful Sencha Components to React Apps
Introducing ExtReact: Adding Powerful Sencha Components to React Apps
Sencha
 
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark BrocatoSenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
Sencha
 
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
Sencha
 
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
Sencha
 
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web AppsSenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
Sencha
 
Ext JS Architecture Best Practices - Mitchell Simeons
Ext JS Architecture Best Practices - Mitchell SimeonsExt JS Architecture Best Practices - Mitchell Simeons
Ext JS Architecture Best Practices - Mitchell Simeons
Sencha
 
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
Sencha
 

More from Sencha (20)

Breathe New Life into Your Existing JavaScript Applications with Web Components
Breathe New Life into Your Existing JavaScript Applications with Web ComponentsBreathe New Life into Your Existing JavaScript Applications with Web Components
Breathe New Life into Your Existing JavaScript Applications with Web Components
 
Ext JS 6.6 Highlights
Ext JS 6.6 HighlightsExt JS 6.6 Highlights
Ext JS 6.6 Highlights
 
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
 
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
 
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App TestingSencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
 
Sencha Roadshow 2017: What's New in Sencha Test
Sencha Roadshow 2017: What's New in Sencha TestSencha Roadshow 2017: What's New in Sencha Test
Sencha Roadshow 2017: What's New in Sencha Test
 
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
 
Sencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
Sencha Roadshow 2017: Modernizing the Ext JS Class System and ToolingSencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
Sencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
 
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
 
Sencha Roadshow 2017: Mobile First or Desktop First
Sencha Roadshow 2017: Mobile First or Desktop FirstSencha Roadshow 2017: Mobile First or Desktop First
Sencha Roadshow 2017: Mobile First or Desktop First
 
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and BeyondSencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
 
Leveraging React and GraphQL to Create a Performant, Scalable Data Grid
Leveraging React and GraphQL to Create a Performant, Scalable Data GridLeveraging React and GraphQL to Create a Performant, Scalable Data Grid
Leveraging React and GraphQL to Create a Performant, Scalable Data Grid
 
Learn Key Insights from The State of Web Application Testing Research Report
Learn Key Insights from The State of Web Application Testing Research ReportLearn Key Insights from The State of Web Application Testing Research Report
Learn Key Insights from The State of Web Application Testing Research Report
 
Introducing ExtReact: Adding Powerful Sencha Components to React Apps
Introducing ExtReact: Adding Powerful Sencha Components to React AppsIntroducing ExtReact: Adding Powerful Sencha Components to React Apps
Introducing ExtReact: Adding Powerful Sencha Components to React Apps
 
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark BrocatoSenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
 
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
 
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
 
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web AppsSenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
 
Ext JS Architecture Best Practices - Mitchell Simeons
Ext JS Architecture Best Practices - Mitchell SimeonsExt JS Architecture Best Practices - Mitchell Simeons
Ext JS Architecture Best Practices - Mitchell Simeons
 
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
 

Recently uploaded

Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 

Recently uploaded (20)

Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 

SASS: The Next Wave in Styling and Theming

  • 1. Authoring Stylesheets With Sass and Compass Monday, November 29, 2010
  • 2. Chris Eppstein Software Architect for Caring.com Creator of Compass Member of Sass Core Team Follow You’re there for them. We’re here for you. @chriseppstein Monday, November 29, 2010
  • 3. Sencha Touch Uses Sass & Compass Monday, November 29, 2010
  • 4. Hold on to Your Hat We’ve got a lot to learn. Stylesheets have grown up. Monday, November 29, 2010
  • 5. Today •Learn the Sass Syntax and features •Learn your way around a Compass project •Overview of Compass Libraries •Style a webpage in minutes •Discover a new approach to design Monday, November 29, 2010
  • 6. CSS3 33 New Selectors 120+ New Properties 3 New @-rules Enhanced Media Queries Monday, November 29, 2010
  • 7. CSS3 More Sophisticated More Powerful More Complex Monday, November 29, 2010
  • 8. CSS3 More Sophisticated More Powerful More Complex No new Syntax To Manage Complexity. Monday, November 29, 2010
  • 9. Sass & Compass A workhorse for CSS developers. Simplifying CSS Using Abstractions. Monday, November 29, 2010
  • 10. What is Sass? What is Compass? Monday, November 29, 2010
  • 11. Sass Features • Variables • Nested Rules • Mixins • Selector Inheritance • Colors • Math • Conditionals • Server-side Imports • Output Formatting & Compression • Silent Comments • Optional Whitespace- Aware Syntax Monday, November 29, 2010
  • 12. Sass Syntax Sass CSS Monday, November 29, 2010
  • 13. Sass: Variables Sass CSS Monday, November 29, 2010
  • 14. Sass: Nested Rules Sass CSS Monday, November 29, 2010
  • 15. Sass: Mixins Sass CSS Monday, November 29, 2010
  • 16. Mixins: Write Your Own Monday, November 29, 2010
  • 17. Sass: Selector Inheritance Sass CSS Monday, November 29, 2010
  • 18. Sass: Colors Sass CSS Monday, November 29, 2010
  • 19. Sass: Colors Representations Functions • hex • mix • rgb() / rgba() • darken/lighten • hsl() / hsla() • transparentize/opacify • Named Colors • compliment/adjust-hue • saturate/desaturate/ grayscale • accessors & more http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html Monday, November 29, 2010
  • 20. Sass: Mathematical Expressions Sass CSS Monday, November 29, 2010
  • 21. Sass: Numeric Units •Handles any unit Examples •Allows complex units in intermediate forms •Understands compatible units Monday, November 29, 2010
  • 23. Sass: Server Side Imports _sidebar.scss screen.scss screen.css Monday, November 29, 2010
  • 24. Sass: Output Formats Compact Compressed Nested Expanded Monday, November 29, 2010
  • 25. Sass: Alternate Syntax Monday, November 29, 2010
  • 26. Sass: Alternate Syntax Monday, November 29, 2010
  • 27. Questions about Sass? Monday, November 29, 2010 ?
  • 28. CSS is 14 years Old We’ve developed Some Best Practices OOCSS Monday, November 29, 2010
  • 29. CSS Frameworks A Codification of Best Practices OOCSS Monday, November 29, 2010
  • 30. Compass A Real Stylesheet Framework Not Frameworks OOCSS Monday, November 29, 2010
  • 31. Compass A Stylesheet Authoring Framework • Project Context • Core Library • Semantic Frameworks • Extensions • Community Monday, November 29, 2010
  • 32. Project Context Create a new project in seconds compass create <project> --using <framework> Monday, November 29, 2010
  • 33. Project Context Compass will Watch for changes and compile automatically compass watch Monday, November 29, 2010
  • 34. If you need Help compass help Self documenting Monday, November 29, 2010
  • 35. If you need Help Online Documentation Monday, November 29, 2010
  • 36. If you need Help The Community http://groups.google.com/group/compass-users http://groups.google.com/group/haml Monday, November 29, 2010
  • 37. Projects are more than just Stylesheets •Images •Fonts •JavaScripts Monday, November 29, 2010
  • 38. Where are your Assets? assets.scss Monday, November 29, 2010
  • 39. Relative Assets: config.rb No Web Server Required assets.scss assets.css Monday, November 29, 2010
  • 40. Absolute Assets: config.rb Web Server Required assets.scss assets.css Monday, November 29, 2010
  • 41. Set an Application config.rb Path Context assets.scss assets.css Monday, November 29, 2010
  • 42. Image Host (CDN/S3/etc) config.rb assets.scss assets.css Monday, November 29, 2010
  • 43. Use Asset Hosts config.rb assets.scss assets.css Monday, November 29, 2010
  • 44. In your CSS?! Wikipedia Reference Compass Documentation Monday, November 29, 2010
  • 45. Asset Helpers stylesheet-url - url to assets stored in the CSS directory font-url - url to assets in the font directory image-url - url to assets in the images directory inline-image - embed an image inline-font-files - embed a font file http://compass-style.org/docs/reference/compass/helpers/ urls/ Monday, November 29, 2010
  • 46. CSS3 It’s pretty cool. But it’s still a work in progress: Vendor prefix hell Incompatible syntaxes Graceful degradation / progressive enhancement considerations Buggy implementations Monday, November 29, 2010
  • 47. Prefix Hell Really? Simple. Who does this? Like it Will Be. What a Pain. Only now. Monday, November 29, 2010
  • 48. Incompatible Implementations http://compass-style.org/docs/reference/compass/css3/ gradient/ Monday, November 29, 2010
  • 49. Compass CSS3 Modules Updated for you as browsers develop Background Clip Font Face Background Origin Gradient Background Size Inline Block Border Radius Opacity Box Text Shadow Box Shadow Transform Box Sizing Transition Columns http://compass-style.org/docs/reference/compass/css3/ Monday, November 29, 2010
  • 50. Compass Utilities Resets Sticky Footer Clearfix Cross browser best practices: floats, mins Links: hover-link, link-colors, unstyled-link Lists: pretty bullets, no-bullets, horizontal lists, inline lists Sprites Tables: striping borders & basic styling Text: ellipsis, no-wrap, text-replacement http://compass-style.org/docs/reference/compass/utilities/ Monday, November 29, 2010
  • 51. Mixin Library A La Carte Customizable Monday, November 29, 2010
  • 52. Browser Support All Modern Browsers Firefox 2 IE6 & 7 Exceptions are noted in the docs. Compass ♥’s progressive enhancement Monday, November 29, 2010
  • 53. The Zen of Sass ‣ Beautiful Markup ‣ Stylesheets that you can visualize ‣ Keep presentation in your stylesheets. ‣ Find your own code style ‣ Build your own framework ‣ Don’t use what you don’t like Monday, November 29, 2010
  • 54. Susy Created by an Eric Meyer for Compass Uses Natalie Down’s CSS Systems approach to grids. Can be elastic, fixed, or fluid. Vertical Rhythm Utilities http://susy.oddbird.net/ Monday, November 29, 2010
  • 55. Some Great Extensions Lemonade - Sprite Generator 960.gs - The 960 grid system ported to Sass Lightboxes - Pure CSS lightboxes Slideshows - Pure CSS slideshows Fancy Buttons - Pure CSS Button Generator Building an Extension is EASY! Monday, November 29, 2010
  • 56. My Teammates Nathan Wiezenbaum (@nex3) - Sass & Haml Eric Meyer (@eriiicam) - Compass, Susy Brandon Mathis (@imathis) - Compass, Fancy Buttons Monday, November 29, 2010
  • 57. Compass is Charityware If you use Compass & Sass and they make your life better, please help make someone else’s life better by making a tax-deductible donation to the United Mitochondrial Disease Foundation. http://umdf.org/compass Monday, November 29, 2010
  • 58. Questions about Compass? Monday, November 29, 2010 ?
  • 59. Photo Credits http://www.flickr.com/photos/mistressb/3961765594/ http://www.flickr.com/photos/katietegtmeyer/68401475/ http://www.flickr.com/photos/empics/2846078511/ http://www.flickr.com/photos/7202153@N03/3361299763/ http://www.flickr.com/photos/euart/282104427/ Monday, November 29, 2010
  • 60. Similar Projects Less (Ruby, Javascript) CSSca old (PHP) Turbine (PHP) xCSS (PHP) CleverCSS (Python) Mechanical CSS (PHP) HSS (Neko) Monday, November 29, 2010