navis-ui v1.6.0
NAVIS UI
Getting Started
In your command line application, you will want to install the necessary tools to start working on the UI framework. Make sure your other projects are at the same level for synced releases.
Install
npm i navis-ui
Development
For development of this project you will want to clone and run these commands
npm i -g gulp
npm i
gulp watch
Publishing
For now, I think a PR for version bump is good enough.
index.html
Make sure to add these things to your layout file. Optionally, for legacy browser support of HTML5 and layout, you can import modernizr/cdn into your head section.
<html class="s-app"> <!-- App scope class-->
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> <!-- This enables smaller devices to view this site responsively -->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400italic,600"> <!-- This is the default webfont -->
<link rel="stylesheet" href="/path/to/main.css"> <!-- This is the main stylesheet -->
</head>
To continue on the path of layout, refer to the example layout section.
Layers
This UI framework consists of multiple UI layers that serve their own purposes.
<div class="u-row u-center">
<code>.utilities</code>
</div>
<div class="u-row u-center">
<a href="#elements">Elements</a>
<div class="u-row u-center">
<button class="c-button c-button--large">Components</button>
<div class="u-row u-center">
<span class="o-button-group__label"><strong>Objects</strong></span>
<div class='o-button-group--toggle'>
<button class='c-button c-button--small'>Component</button>
<button class='c-button c-button--small c-button--text'>Element</button>
</div>
</div>
Syntax
Synopsis - Give developers more knowledge about how the classes behave in a non-relative sense: BEM + ITCSS = BEMIT
Sources
More Transparent UI Code with Namespaces
BEMIT: Taking the BEM Naming Convention a Step Further
Anatomy
.namespace-block__element--modifier\@media { }
Namespaces
/* Object */
.o-object-name[<element>/<modifier>] {}
/* Component */
.c-component-name[<element>/<modifier>] {}
/* Utility */
.u-utility-name {}
/* Theme */
.t-theme-name {}
/* Scope */
.s-scope-name {}
/* State */
.[is/has]-state {}
/* Hack */
._<namespace>hack-name {}
/* Javascript */
.js-component-name {}
/* Quality Assurance */
.qa-node-name {}
Responsive Suffixes
Breakpoints
.o-object-name\@sm {}
.o-object-name\@md {}
.o-object-name\@lg {}
Media type
.u-utility-name\@print {}
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago