May 27, 2017
facebook.com/chernivtsijs
LambdaBooksgithub.com/LambdaBooks
Інструмент длятих,
в кого бомбить
brunch|brən(t)SH|
a late morning meal eaten instead ofbreakfast and lunch.
Для чого намвелосипед?
Brunch (2011)Grunt (2011)
Browserify (2012)Webpack (2012)
Gulp (2013)Broccoli (2013)
Fly (2015)
Слайд про те,як все було погано
@paulmillr
@es128
Слайд про те,як все стало круто
chokidargulp, webpack, browserify, fly
7.5M встановлень/місяць
Комерційнапідтримка*
*опенсорс за бабки
Простіконфіг
пайплайнAPI
хуки
Декларативнийконфіг
brunch-config.jsmodule.exports = files: javascripts: joinTo: 'app.js' , stylesheets: joinTo: 'app.css'
Валідація конфіга
Три командиnew, build, watch
Зрозумілийпайплайн
file↓
lint(file): Boolean↓
getDependencies(file): Array[Path]↓
compile(file): File↓
optimize(file): File↓
onCompile(files, assets)
Прозорий API дляплагінів
hooks: preCompile() // .. , onCompile(generatedFiles, changedAssets) // ... return Promise.resolve(); , ,
Скелетиbrunch.io/skeletons
Перезапуск призміні конфігів
Встановленнязагублених
залежностей
Системнісповіщення про
помилки
Плагінипрацюють з
коробкиБез додаткових налаштувань, відразу після
встановлення
with-reactbrunch new -s brunch/with-react
brunch-cofig.jsmodule.exports = javascripts: joinTo: 'vendors.js': /^(?!app)/, 'app.js': /^app/, , , stylesheets: joinTo: 'app.css' , ;
Ці слайди наReact + Brunch
denysdovhan/slides-feel-good-with-brunch
with-reduxbrunch new -s brunch/with-redux
brunch-cofig.jsmodule.exports = hot: true, //...
SPA — бро сайтики на вордпресі — бро
статика — бро бібліотеки — не бро
Немає тестів**якби є, але написані на ava
Немаєrequire.ensure
Обмеженіінструменти для
оптимізаціїбандла
Реальнікористувачі
Матеріали
brunch.ioAndrew Cox — Diving into BrunchWSD — Алексей Швайка: «Про Brunch и
как мы его делаем»
Слайдиdenysdovhan/slides-feel-good-with-brunch