22
GRUNT — ADVANCED TIPS Nikita Bayev Front-end developer @ Chocomart.kz 1

ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

Embed Size (px)

DESCRIPTION

Grunt - Advanced Tips (NIkita Bayev) www.chocomart.kz

Citation preview

Page 1: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

GRUNT — ADVANCED TIPS

Nikita Bayev Front-end developer @ Chocomart.kz !

!1

Page 2: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

gruntjs.com

Page 3: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

nodejs.org

Page 4: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

> grunt

Page 5: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!5

Page 6: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!6

Оптимизация

Автоматизация

Минификация

Генерация

Page 7: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!7

Autoprefixer

imgo

Borschik

banner

concurrent

Page 8: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!8

Page 9: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!9

Autoprefixer grunt.loadNpmTasks(‘grunt-autoprefixer');Чистка кода

Добавление нужны вендорных префиксов

Удаление устаревших ненужных вендорных префиксов

Используется база данных caniuse.com

Умеет работать с препроцессорами и source maps

Page 10: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!10

Конфигурация grunt-autoprefixer

Page 11: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!11

И это все?

Page 12: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!12

Добавим немного опций

Page 13: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!13

Добавим немного опций

Page 14: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!14

borschik grunt.loadNpmTasks('grunt-borschik');

Сборка статичных файлов

“Умная” минификация CSS и JS

Page 15: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!15

Конфигурация borschik

Page 16: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!16

imgo grunt.loadNpmTasks('grunt-imgo');

Оптимизация изображений

Page 17: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!17

Page 18: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!18

Создаем задачу imgo

Page 19: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!19

grunt.loadNpmTasks('grunt-concurrent');

Асинхронный запуск тасков

Page 20: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!20

Конфигурация grunt-concurrent

Page 21: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!21

Что еще?

grunt-remove-logging — удаление console.log()

grunt-dploy — помощь в деплое на дев/продакшн сервера

grunt-contrib-imagemin — оптимизация изображений

grunt-dev-update — обновление npm-зависимостей

И еще много всего на github.com и gruntjs.com

Page 22: ChocoDevDay — Grunt - Advanced Tips (NIkita Bayev)

!22

Спасибо за внимание

twitter.com/Nikita_Bayev | github.com/drugoi