starlette-sass-helpers

A group of mixins, functions and variables to get your frontend project started. New feature added: 24 column grid.


Keywords
Sass, SCSS, Framework, Grid
License
ISC
Install
npm install starlette-sass-helpers@1.0.1

Documentation

Lilium Framework

A group of mixins, functions and variables to get your frontend project started.

Getting Started

Installation

npm install starlette-sass-helpers

Usage

Include the following "import" in your sass files.

@import "path/to/your/node_modules/starlette-sass-helpers/scss/lilium";

Remember to change out "path/to/your/" to match your folder structure.

For example, if your sass file is located at "/assets/sass/layout.scss" then the code would change to this:

@import "../../node_modules/starlette-sass-helpers/scss/lilium";

Documentation

Breakpoints

body {
    @include breakpoint(sm) { 
        color: green;
    }
    @include breakpoint(sm, max) { 
        color: blue;
    }
    @include breakpoint(sm, between) {
        color: red;
    }
    @include breakpoint(lg, between) {
        color: black;
    }
}

The above code compiles to this

@media(min-width: 576px) {
    body {
        color: green;
    }
}
@media(max-width: 575px) {
    body {
        color: blue;
    }
}
@media(min-width: 576px)and (max-width: 767px) {
    body {
        color: red;
    }
}
@media(min-width: 992px)and (max-width: 1199px) {
    body {
        color: #000;
    }
}

Flexbox

See how flexbox works.

body {
    @include flexbox;
    @include flex-direction( col );
}

New Feature

Fluid (Responsive) Typography

Mixin Param 1 Param 2
font-size Mobile font size Desktop font size

As the screen size changes the font size will change accordingly. This all happens between the mobile and desktop breakpoints.

When it hits the mobile breakpoint it will stay a fixed size (example below - 16px). Same goes for desktop (example below - 35px).

The responsive size will never be smaller than the mobile font size or bigger than the desktop font size.

Example

h1 {
    // 16px - mobile font size
    // 35px - desktop font size
    @include font-size( 16px, 35px );
}

Gradients

Direction Colors
down / up / right / left List of colors (space separated)

Background

body {
    @include linear-gradient( down, red orange yellow green blue purple pink );
}

Text

h1 {
    @include text-background-gradient( left, rgba(255,255,255,0) #444444 );
}

Grid

Uses a 24 grid column structure.

col-1 is the smallest size column (4.16%).

Columns

<div class="container">
    <div class="row">
        <div class="col-1"> 1 </div>
        <div class="col-2"> 2 </div>
        <div class="col-3"> 3 </div>
        <div class="col-4"> 4 </div>
        <div class="col-5"> 5 </div>
        <div class="col-6"> 6 </div>
        <div class="col-7"> 7 </div>
        <div class="col-8"> 8 </div>
        <div class="col-9"> 9 </div>
        <div class="col-10"> 10 </div>
        <div class="col-11"> 11 </div>
        <div class="col-12"> 12 </div>
        <div class="col-13"> 13 </div>
        <div class="col-14"> 14 </div>
        <div class="col-15"> 15 </div>
        <div class="col-16"> 16 </div>
        <div class="col-17"> 17 </div>
        <div class="col-18"> 18 </div>
        <div class="col-19"> 19 </div>
        <div class="col-20"> 20 </div>
        <div class="col-21"> 21 </div>
        <div class="col-22"> 22 </div>
        <div class="col-23"> 23 </div>
        <div class="col-24"> 24 </div>
    </div>
</div>

Responsive

<div class="container">
    <div class="row">
        <div class="col-sm-1"> </div>
        <div class="col-md-1"> </div>
        <div class="col-lg-1"> </div>
        <div class="col-xl-1"> </div>
    </div>
</div>

Offset

<div class="container">
    <div class="row">
        <div class="col-1"> </div>
        <div class="offset-col-1"> </div>
    </div>
</div>