eat your greens
play

Eat Your Greens A beginners guide to Broccoli.js Asset pipeline - PowerPoint PPT Presentation

Eat Your Greens A beginners guide to Broccoli.js Asset pipeline for ambitious application Broccoli.js explained Broccoli.js is a file-system abstraction for transformations of input files into output files. Internally, Broccoli.js represents


  1. Eat Your Greens A beginners guide to Broccoli.js

  2. Asset pipeline for ambitious application

  3. Broccoli.js explained Broccoli.js is a file-system abstraction for transformations of input files into output files. Internally, Broccoli.js represents transformations as nodes and plugins, and uses these to construct a build tree or graph. Broccoli handles connecting these nodes and plugins together and handles passing files between each state.

  4. Broccoli.js explained - glossary • Nodes 
 Snapshot of the filesystem, with inputs and and output 
 • Plugins 
 Process nodes, emit files to an output directory 
 • Trees 
 A collection of nodes & plugins

  5. Broccoli.js explained - glossary • Nodes 
 Snapshot of the filesystem, come in 2 flavors. Source Nodes Transform Nodes • Map to a “source” directory • Take node(s) as input • Can be watched/unwatched • Cacheable • Can trigger a rebuild • Persistable

  6. Broccoli.js explained - glossary • Plugins 
 Process nodes, emit files to an output directory • Building blocks of broccoli, perform the actual work • Plugins are the API that user-land code typically uses. • Accept either source or transform nodes. • Typically wrap a node package to do some form of transformation.

  7. Broccoli.js explained - glossary • Trees 
 A collection of nodes & plugins • Trees represent a full transformation pipeline from “source” input nodes, through plugins, into output nodes 
 • Trees are created and manipulated by you, in your Brocfile.js, and composed and split as you desire 
 • You can think of a “tree” like a directory structure

  8. Example pipeline

  9. source directory /app contents components/foo.js app.js components/bar.js … *.js public/header.jpg scss styles/app.scss public/logo.png index.html

  10. source node /app broccoli- filter scss broccoli- broccoli- eslint scsslint

  11. broccoli- broccoli- rollup sass broccoli- broccoli- babel- autoprefixer transpiler broccoli-merge-trees

  12. /dist output directory contents app.js assets/header.jpg css app.css assets/logo.png index.html

  13. /app scss

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend