UNPKG

grunt-mangony

Version:

Grunt wrapper for Mangony, another static site generator - fast, simple and powerful.

88 lines (59 loc) 1.99 kB
### General On most applications we have markup which has no relationship to its content but is important to display the inner HTML in a structured way. Nice examples are grid helper classes like Foundation or Boostrap provides. Therefore Veams uses the instrument `Utility` and provides a neat [handlebars helper](http://www.veams.org/veams-cli/template-helper/overview.html#wrapwith-helper-block-helper-). Examples are: 1. Grid systems per class 2. Multiple sections in regions You do not have to use Utilities when you think it is not necessary - this is up to you. ### Why do we use Utilities? We use Utilities to simplify the differentiation between `Components` and helper markup. ### Structure When we use Utilities, we prefix them with `u-` (or `_u-` for scss files). The declaration helps us structuring our code base. But you can also just forget the prefix when you are using frameworks with predefined classes. #### Example Snippet ``` hbs <div class="u-grid-row"> <div class="u-grid-col is-3"> </div> <div class="u-grid-col is-3"> </div> <div class="u-grid-col is-3"> </div> </div> ``` ### File/Folder Structure When you use a Template Engine, it is important to create a folder for your utilities. Our utilities folder structure can look like this: ``` bash └───partials └───utilities u-grid-row.hbs u-grid-col.hbs u-section.hbs ``` ### Styles and Sass Structure The styles are scoped to the utility. For each Utility we create a Sass file. The folder can look like this: ``` bash ├───scss └───utilities _u-grid-row.scss _u-grid-col.scss _u-section.scss ``` ### Examples Here are some examples: * Grid System * Sections #### Grid Row ``` hbs <div class="u-grid-row"> \{{{yield}}} </div> ``` #### Grid Column ``` hbs <div class="u-grid-col\{{#if options.classes}} \{{options.classes}}\{{/if}}"> \{{{yield}}} </div> ```