Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Front-end on steroids

Avatar for Timble Timble
April 11, 2015

Front-end on steroids

Presentation about modern front-end development techniques.

With pages and applications growing in complexity, we now have an increasing need for better tools to help build, test, and monitor our code. Everything from build scripts to monitoring and device testing are now important parts of the front-end developer's job.

Avatar for Timble

Timble

April 11, 2015

More Decks by Timble

Other Decks in Technology

Transcript

  1. BEM

  2. $beta: 580px; $charlie: 740px; .sidebar { @include breakpoint($beta) { @include

    span(4 of 12); } @include breakpoint($charlie) { @include span(3 of 12); } }
  3. .content { @include breakpoint($beta) { @include span(8 of 12); }

    @include breakpoint($charlie) { @include span(9 of 12); } }
  4. @media screen and (min-width: 580px) { .sidebar { width: 32.20339%;

    float: left; margin-right: 1.69492%; } } @media screen and (min-width: 740px) { .content { width: 74.57627%; float: left; margin-right: 1.69492%; } }
  5. @media screen and (min-width: 740px) { .sidebar { width: 23.72881%;

    float: left; margin-right: 1.69492%; } } @media screen and (min-width: 580px) { .content { width: 66.10169%; float: left; margin-right: 1.69492%; } }
  6. # registered package $ bower install jquery # GitHub shorthand

    $ bower install desandro/masonry # Git endpoint $ bower install git://github.com/user/package.git # URL $ bower install http://example.com/scr.js
  7. { "name": "internet-platform", "devDependencies": { "html5shiv": "aFarkas/html5shiv#3.7.*", "illusion": "timble/illusion#master", "magnific-popup":

    "dimsemenov/Magnific", "select2": "ivaynberg/select2#3.5.*", "susy": "ericam/susy#2.2.*" } } BOWER.JSON
  8. module.exports = function(grunt) { // load time-grunt and all grunt

    plugins require('load-grunt-tasks')(grunt); grunt.initConfig({ // Tasks }); grunt.registerTask('default'); }; GRUNTFILE.JS
  9. grunt.initConfig({ // Sass sass: { dist: { files: { css/style.css':

    'scss/style.scss', css/ie9.css': 'scss/ie9.scss' } } } }); SASS TASK
  10. module.exports = function(grunt) { // load time-grunt and all grunt

    plugins require('load-grunt-tasks')(grunt); grunt.initConfig({ sass: {...} watch: {...} }); grunt.registerTask('default', ['watch']); }; GRUNTFILE.JS