# Awesome Sass

Disclaimer! Fair warning: this list is a way for me to keep track of all my work around Sass. For this reason, I do not accept pull-requests. That being said I am willing to have another version of this list with everbody’s work, even if it means renaming this repository. :)

## Books

- Jump Start Sass: a beginner’s guide to get started with Sass

## Projects

- Sass Reference: SitePoint Sass Reference
- SassDoc: release the docs!
- Sass Guidelines: an opinionated styleguide for writing sane, maintainable and scalable Sass
- Sass-Compatibility: Sass Compatibility tables
- Sass-Boilerplate: a Sass boilerplate sticking to Sass Guidelines
- Sass-semver: a SemVer parser in Sass
- SassyTester: a minimalister function tester in Sass
- SassyBitwise: bitwise operators implemented in Sass
- SassyCast: a small lib for type conversion across data types
- SassyJSON: a JSON encoder/decoder in Sass
- SassyLists: a collection of functions to manipulate lists
- SassyMatrix: a collection of functions to manipulate matrices
- SassySort: a Sass sorting function using various algorithms
- SassyStrings: a collection of functions to manipulate strings
- SassyLogger: a message logger in Sass
- SassyGradients: a collection of tools to help manipulate gradients in a dynamic way
- SassyIteratorsGenerators: iterators and generators implementation in Sass

## On my blog

- Styling React Components in Sass by David Khourshid (18-06-2015)
- Translating Sass Guidelines (03-02-2015)
- Introducing Sass Guidelines (07-01-2015)
- Calculating specificity in Sass by David Khourshid (25-11-2014)
- Rethinking Atwood’s law (27-10-2014)
- Translation system in Sass (22-10-2014)
- SassDoc and semantic versioning (01-09-2014)
- Automating CSS animations with Sass (16-07-2014)
- Building a customization API in Sass by Ezekiel Gabrielse (01-07-2014)
- A new Sass mixin for offsets (19-05-2014)
- Modernizr Sass mixin by Daniel Guillan (12-05-2014)
- Bringing configuration objects to Sass (05-05-2014)
- Casting a map into a list in Sass (28-04-2014)
- Building a walk function in Sass (14-04-2014)
- What to do with a Sass list (07-04-2014)
- Pushing Sass placeholders further (01-04-2014)
- Getting the most out of Sass placeholders (31-03-2014)
- SassyMatrix: because one dimension wasn’t enough (25-03-2014)
- SassySort: sorting algorithms in Sass (18-03-2014)
- Another Sass button library (03-03-2014)
- Star rating widget with Sass (24-02-2014)
- SassyCast: Type conversion in Sass (27-01-2014)
- SassyJSON: Talk to the browser! (20-01-2014)
- Casting a string to number in Sass (15-01-2014)
- String replacement function in Sass (13-01-2014)
- Sass brainfuck (28-11-2013)
- How I made a Sass debug function (21-10-2013)
- Random function with Sass 3.3 (17-10-2013)
- Advanced Sass list functions again (09-10-2013)
- Use lengths not strings (03-09-2013)
- A couple of Sass functions (12-08-2013)
- Advanced Sass list functions (08-08-2013)
- Sass mixin for offsets (05-08-2013)
- Understanding Sass lists (15-07-2013)
- Digging into my slides about Sass (08-07-2013)
- Items on circle with Sass (02-04-2013)
- 8 Compass extensions you may not know (25-03-2013)
- The ultimate PX/Rem mixin (18-03-2013)
- Can I afford a preprocessor? (14-03-2013)
- Sassy Media queries (27-02-2013)
- Sassify a CSS shape (18-02-2013)
- A closer look at my Sass structure (11-02-2013)
- Why I switched from LESS to Sass (13-11-2012)

## At other places

- Tilted Angles in Sass at SitePoint (21-09-2016)
- A Tale of CSS and Sass Precision at SitePoint (12-05-2016)
- Introducing our Newest Book: Jump Start Sass at SitePoint (04-04-2016)
- Cleaning Up A CSS Codebase at SitePoint (09-03-2016)
- Using @error responsibly in Sass at SitePoint (11-08-2015)
- An easy way to document your Sass code at CreativeBloq (27-07-2015)
- Centering With Sass at SitePoint (16-07-2015)
- Getting Started with SCSS-lint at SitePoint (25-06-2015)
- Structuring CSS Class Selectors with Sass at SitePoint (09-07-2015)
- Introducing SitePoint Sass Reference at SitePoint (24-06-2015)
- Testing A Sass Library at SitePoint (23-06-2015)
- Testing A Sass Function in 5 Minutes at SitePoint (16-06-2015)
- Simple Gulp’y Workflow For Sass at SitePoint (11-06-2015)
- Sass Mixin And Media Merging at SitePoint (02-06-2015)
- Sass Theming: The Neverending Story at SitePoint (26-05-2015)
- Understanding Sass Units at SitePoint (26-02-2015)
- Breakpoints and tweakpoints in Sass at SitePoint (17-02-2015)
- Why I Don’t Use Compass Anymore at SitePoint (10-02-2015)
- SassDoc 2 Shiny Streamy Octopus is Out at SitePoint (05-02-2015)
- The Ultimate Long-Shadow Mixin at SitePoint (22-01-2015)
- Extra Map Functions in Sass at SitePoint (15-01-2015)
- Introducing Sass-Compatibility at SitePoint (23-12-2014)
- Functional wrappers in Sass at SitePoint (18-12-2014)
- Why you should avoid Sass `@extend` at SitePoint (11-12-2014)
- Building a linear gradient mixin at SitePoint (02-12-2014)
- [FR] Quand Sass ne rend plus service for 24 Jours du Web (01-12-2014)
- Sass Multiple Arguments, Lists or Arglists at SitePoint (20-11-2014)
- Dealing with constants in Sass at SitePoint (28-10-2014)
- Cubic Bezier representation in Sass with Tim Severien at The Sass Way (26-10-2014)
- Debugging Sass Maps at SitePoint (21-10-2014)
- Building a step wizard with BEM and Sass at SitePoint (02-10-2014)
- Beware of selector nesting in Sass at SitePoint (25-09-2014)
- A bulletproof function to validate lengths in Sass at SitePoint (10-09-2014)
- Building a logger mixin in Sass at Tuts+ (02-09-2014)
- Sass 3.4 is out! at SitePoint (22-08-2014)
- What’s up with SassDoc 1.2? at Tuts+ (12-08-2014)
- Keep Sass Simple at SitePoint (30-07-2014)
- Using Sass to build color palettes at SitePoint (17-07-2014)
- How to check for dependencies in Sass libraries at Tuts+ (02-07-2014)
- Tips to help you level up your Sass at SitePoint (26-06-2014)
- All you ever need to know about Sass interpolation at Tuts+ (24-06-2014)
- A better solution for managing z-index in Sass at SitePoint (20-06-2014)
- Useful Compass extensions that are worth a try at SitePoint (09-06-2014)
- Using Sass maps at SitePoint (06-06-2014)
- Compass or Bourbon at SitePoint (29-05-2014)
- Managing responsive breakpoints in Sass at SitePoint (20-05-2014)
- A Sass mixin for CSS triangles at SitePoint (15-05-2014)
- When and how to support multiple versions of Sass at Tuts+ (12-05-2014)
- Sass mixins to kickstart your project at SitePoint (08-05-2014)
- Sass or SCSS at SitePoint (29-04-2014)
- My favourite Sass tools at SitePoint (22-04-2014)
- Caching values from Sass mixins at SitePoint (15-04-2014)
- Cross @media queries @extend directive in Sass at SitePoint (10-04-2014)
- A creative grid system with Sass and calc() at SitePoint (27-03-2014)
- Creating a Rainbow Border with Sass at SitePoint (18-03-2014)
- Implementing the Bubble Sort algorithm in Sass at TheSassWay (17-03-2014)
- My current CSS and Sass styleguide at SitePoint (13-03-2014)
- An introduction to error handling in Sass at Tuts+ (12-03-2014)
- Dealing with color schemes in Sass at SitePoint (06-03-2014)
- Architecture for a Sass project at SitePoint (27-02-2014)
- Is Compass to Sass what jQuery is to JavaScript at SitePoint (17-02-2014)
- A Sass component in 10 minutes at SitePoint (12-01-2014)
- What nobody told you about Sass @extend at SitePoint (05-02-2014)
- Sass: Mixin or placeholder? at SitePoint (31-01-2014)
- How to programmatically go from one color to another at TheSassWay (30-01-2014)
- Math sequences with Sass at TheSassWay (14-10-2013)
- MetaFizzy effect with Sass at CSS-Tricks (12-08-2013)
- Looking into the future of Sass at David Walsh’ (17-07-2013)
- Create Striped Backgrounds With Gradients (and a Sass Mixin) at CSS-Tricks (09-07-2013)

## Screencasts

- SassBites #42
- Podcast at CDNify

## CodePen / SassMeister

- Assert system
- Simple nth-of-type for IE
- trim() function
- Multiple properties sharing same value
- Functional programming
- Fixing Sass / Grid layout bug
- Advanced type checking
- Dealing with context and events in a friendly way
- A new clamp function
- Proxifying functions and mixins
- Writing modes handler
- Cast to list / change list separator
- Map extra functions
- Map API polyfill for Sass 3.2
- Initialize a comma-separated empty list
- Dependency checker
- Some() and every() functions
- Find max depth of a map
- jQuery-style extend Sass function
- Fifty Shades of Grey in Sass
- Advanced map-remove()
- Float comparison
- Opposite direction without Compass
- Simple breakpoints manager
- z-index handling in Sass projects
- Map-fetch function
- Caching values from mixins
- Dot accessor for lists and maps
- Managing vendor prefixes’ aliases
- Prefixer mixin
- :matches() polyfill in Sass
- Sass to CSV converter
- An alert component in Sass
- Sass + calc: a creative grid system
- Programmatically finding one color from another one
- Levenshtein distance between two strings in Sass
- Google Font Sass mixin
- Float: down with Sass
- CSS counters + Sass
- Sass mixin for scrollbar styling
- Issues with Sass lists
- Hyphens and underscores in Sass names
- Leap-year in Sass
- Prime number in Sass
- @for loop in keyframes
- Step wizard component
- Nested Sass lists as property/value pairs
- Differences between () and null
- Gradient from loop

## License

To the extent possible under law, Kitty Giraudel has waived all copyright and related or neighboring rights to this work.