Skip to content

v1.0.0

Compare
Choose a tag to compare
@deioo deioo released this 16 Aug 13:51
· 177 commits to develop since this release

Changelog

What's New

  • Simplified file structure (core, tools, global, components)
  • Clearly define hierarchy based on component function and dependencies (core functions are standalone, tools only use core, global only use tools and core and so on.)
  • Unified output where property values are returned by functions consistently, instead of combining functions and variables (e.g use radius(round) instead of $border-radius-rounded, or font(weight, bold) instead of $font-weight-bold / gutter() instead of $column-gutter or %gutter__all).
  • Removed BEM naming conventions from base components to avoid confusion (e.g instead of modifiers like %row--middle we now have %row-middle)
  • The only places where BEM structure is used are the more complex components like button-group or notifications, where we have to name specific elements like button-group__item or notification__action.
  • Remove single-property 'atom' placeholders and allow everyone to call CSS property with a settings value as a param instead (this avoids creating an unnecessary abstraction) E.g %border__bottom is now border-bottom: 1px solid color(border);.
  • None of the properties enforce a DOM structure, the placeholders are intended to be applied on any kind of format and markup
  • New flex grid (%row and %col).
  • Simplified buttons system that use only base, primary and secondary instead of success, warning, danger, info and inverted styles.

File structure

  • Moved stylesheets into CORE, TOOLS, GLOBAL and COMPONENTS based on dependency
  • Created a deprecated components graveyard, with code that is to be ported over to the apps
  • Removed global variables, making all settings component-specific
  • Removed external library dependencies (like font-awesome)

Component structure

  • Follow the same content structure for each and every stylesheet:
    • Settings map / function to retrieve settings
    • Private and public mixins
    • Private placeholders
    • Exports mixin that encapsulates dynamically generated placeholders to avoid duplicating the logic in case of multiple inclusion