ãã®æçš¿ã¯ã以åã®ã³ã¬ã¯ã·ã§ã³ãGruntã«æãå¿ èŠãªãã©ã°ã€ã³ãã®è€è£œã§ãããšèšããŸã ã å®éãäœæéãã®æ€çŽ¢ãè¡ã£ãåŸãGulpçšã®ã¯ãŒã«ãªãã©ã°ã€ã³ã¯èŠã€ãããŸããã§ãããããã¯ãGruntçšã§ã¯ãªããããã€ãã®éåžžã«ç¹æ®ãªãŠãŒãã£ãªãã£ãé€ããŸãã ããã¯æ£å察ã§ãããå€ãã®GulpãŠãŒã¶ãŒãç¡èŠããããšã¯ã§ããŸããã§ããã Gulpã¯GruntãããGruntãããGruntãã䜿çšã§ãããããäžè¶³ããŠãããã¹ãŠã®ãã©ã°ã€ã³ããã€ã©ã€ãããŸããã
ãã¹ãŠã®äººã«è¯ãäžæ¥ãïŒ è³¢ã人ãHabréã®ã©ã®èšäºãèŠããŠããªãã®ããæè¿ãèªååã§ãããã¹ãŠã®ãã®ãèªååããæ瀺çãªåŒã³åºãã§éçºããã»ã¹ã«ã€ããŠèããã°ããã§ãã ãããŠããããžã§ã¯ãå šäœã§åŸã§èªååããããã«ãäžåºŠèªååã«æéãè²»ããããšããå§ãããŸãã
Webéçºè ã«ã¯ãGulpãšåŒã°ãã倧éã®ã¿ã¹ã¯ãèªååããããã®åªããããŒã«ããããŸãã ãããŠãåé¡æ³ã«å¯Ÿããç§ã®æ ç±ã¯ããã®ã³ã¬ã¯ã¿ãŒã®ããã«100è¿ãã®è²Žéãªãã©ã°ã€ã³ã®èšå€§ãªã³ã¬ã¯ã·ã§ã³ããŸãšããããšãäœåãªããããŸããã ãã§ã«Gulpã䜿çšããŠãã人ã®å€ãã¯èªåã§äœããèŠã€ããããã§ãªã人ã¯å¯èœæ§ãèŠãŠããããã€ã³ã¹ããŒã«ããŠãã®ä»çµã¿ãã©ã®ããã«æ©èœããããç解ããè¯ãã¢ãããŒã·ã§ã³ãåŸãŸãã
誰ããã³ã¬ã¯ã·ã§ã³ã«è¿œå ã§ããããã«ã GitHubã«ãã»ã¬ã¯ã·ã§ã³ãæçš¿ããŸããã
HTMLãšCSS
autoprefixerã¯ã ã«ããŒçµ±èšã«åºã¥ããŠCSSããããã£ã«èªåçã«ãã¬ãã£ãã¯ã¹ãä»ããæã䟿å©ãªãã©ã°ã€ã³ã®1ã€ã§ãã AutoPrefixerã¯ãEvil Martiansã®PostCSSãããžã§ã¯ãã®ãã¬ãŒã ã¯ãŒã¯å ã®å€ãã®ã¢ããªã³ã®1ã€ã«ãããªãããšèšãããšãéèŠã§ãã
gulp-browser-syncã¯ãããããWebéçºè ã®çç£æ§ãåäžããããšããç¹ã§æã䟿å©ãªããŒã«ã§ãã BrowserSyncã¯æ¥ç¶ãäœæãããã®åŸã¯ã©ã€ã¢ã³ããŸãã¯ãµãŒããŒãã¡ã€ã«ã ãã§ãªãããã¹ãŠã®ããã€ã¹ã®ãã¹ãŠã®ãã©ãŠã¶ãŒã§ããŒãžãèªåçã«æŽæ°ããŸãã ããã«ãã¹ã¯ããŒã«äœçœ®ãšãã©ãŒã ã®å®æããããŒã¿ãåæããŸãã
gulp-useref-ç¹å®ã®ãããã¯ã解æãããããã«èšè¿°ãããŠããã¹ã¿ã€ã«ãšã¹ã¯ãªãããé£çµããŸãã
gulp-email-designã¯ããã¹ãŠã®CSSã¹ã¿ã€ã«ãã€ã³ã©ã€ã³ã¹ã¿ã€ã«ã«å€æãããã¡ã€ã«ãžã®ãã¹ãŠã®ãã¹ãèªåçã«å€æŽãããªãã·ã§ã³ã§ç»åãCDNã«ã¢ããããŒãããããæçŽãé»åã¡ãŒã«ã«éä¿¡ããããããæåãçµçããããã®è²ŽéãªããŒã«ã§ãã
gulp-uncssã¯ãCSSãã¡ã€ã«ãæé©åããããã®æé©ãªãœãªã¥ãŒã·ã§ã³ã§ãã ãã©ã°ã€ã³ã¯HTMLã³ãŒããåæãããã¹ãŠã®æªäœ¿çšããã³éè€ã¹ã¿ã€ã«ãèŠã€ããŸãã
gulp-cssoã¯åªããCSSãããã¡ã€ã€ã§ãã ä»æ¥ãå€ãã®CSSã³ã³ãã¬ããµãŒãšãããã®æ¯èŒè¡šïŒGitHubïŒããããŸãã ãããæè¿ãGulpã®ãªãæé«ã®éèšãŠãŒãã£ãªãã£ãèŠã€ããŸããã
a { font-family: Arial; font-style: italic; font-size: 14px; line-height: 18px; font-weight: bold; background-image: url('example.png'); background-color: red; background-size: cover; background-repeat: no-repeat; } => a { font: italic bold 14px/18px Arial; background: red url('example.png') no-repeat / cover; }
gulp-htmlminã¯ã·ã³ãã«ãªHTMLãããã¡ã€ã€ã§ãã
gulp-csscomb -CSSã®æ§é ãé«è²Žã«ããŸãã
gulp-csslint -CSSãªã³ã¿ãŒã
gulp-htmlhint -HTMLããªããŒã¿ãŒã
Javascript
gulp- autopolyfillerã¯ãAutoprefixerã«äŒŒãéåžžã«ã¯ãŒã«ãªãã©ã°ã€ã³ã§ãããJavaScriptã«å¿ èŠãªãã¹ãŠã®èŠªåãããã¯ã¢ãããããããä»æ¥ã®ææ°ã®ECMAScriptæšæºã䜿çšã§ããŸãã ES6 / ES7ãES5ã«å€æããgulp -babelããå§ãããŸãã
gulp-jsfmtã¯ãRdioããŒã ãæäŸããæã䟿å©ãªJavaScriptãã©ã°ã€ã³ã§ããããã䜿çšãããšãç¹å®ã®ãã©ã°ã¡ã³ããæ€çŽ¢ããã³ãŒãããã©ãŒãããããå€§å¹ ã«å€æŽã§ããŸãã gulp-jsbeautifierããããŸãã
gulp-jscs -JavaScriptã³ãŒãã¹ã¿ã€ã«ã jQueryãYandexãGoogleãAirbnbãªã©ã®æ¢åã®ã¹ã¿ã€ã«ã¬ã€ãã«å¯ŸããŠã³ãŒãããã§ãã¯ããããã®å€ãã®æ§æãåããçŽ æŽãããããŒã«ã
gulp-modernizr-ãã©ãŠã¶ãŒã®æ©èœã«å¿ããŠãModernizr.jsã«åºã¥ããŠãããžã§ã¯ãã®æ£ããã¢ãŒããã¯ãã£ãäœæããã®ã«åœ¹ç«ã¡ãŸãã
gulp-express -Express.js WebãµãŒããŒãèµ·åããŸãã
gulp-requirejsãšgulp -browserify -RequireJSãšBrowserifyãããããæé©åããŸãã
gulp-plato-çŸããã°ã©ãã®åœ¢ã§ããŸããŸãªã¡ããªãã¯ã䜿çšããŠã³ãŒãã®åæãæäŸããŸãã
gulp-complexity -Halsteadããã³Cyclomaticã¢ã«ãŽãªãºã ã«åºã¥ãã³ãŒãå質ãã§ãã¯ã
fixmyjs - JSHint ïŒ gulp-jshint ïŒã«åºã¥ããŠå®è¡ãããlintåŸã®ã³ãŒãå ã®åçŽãªãšã©ãŒãèªåçã«ä¿®æ£ããŸãã
gulp-jscpd-ã³ãŒãå ã®éè€ãæ€çŽ¢ããŸãã
gulp-jsonlint -JSONãã¡ã€ã«æ€èšŒããŒã« ã
gulp-uglify -JavaScriptã³ã³ãã¬ããµãŒã
gulp-concat-ãã¡ã€ã«é£çµã
åäœãã¹ã
ã°ã©ãã£ãã¯ã¹
gulpiconã¯ãSVGããã¹ãã©ã€ããçæããPNGã«å€æãããã¹ãŠã®ããŒã¿URIãèšè¿°ãããã©ãŠã¶ãŒã®æ©èœã«å¿ããŠç®çã®åœ¢åŒã«æ¥ç¶ã§ãã貎éãªãã©ã°ã€ã³ã§ãã
gulp-iconfontã¯ãWebãã©ã³ããæäœããããã®åªãããã©ã°ã€ã³ã§ãã SVGããWOFFãWOFF2ãEOTãTTFãã¡ã€ã«ãäœæã§ããŸãã
gulp-responsiveã¯ãååã«é©åãªãã¬ãã£ãã¯ã¹ã䜿çšããŠãå¿ èŠãªããã€ã¹è§£å床ã®ã¬ã¹ãã³ã·ãã€ã¡ãŒãžãçæããç°¡åãªæ¹æ³ã§ãã
gulp-sharpã¯ãJPEGãPNGãWebPãããã³TIFFç»åãæäœããããã®æéã®ã¢ãžã¥ãŒã«ã§ãã ãã©ã°ã€ã³ã¯ããµã€ãºãæ¹åãèæ¯ãã¢ã«ãã¡ãã£ãã«ãªã©ãå€æŽã§ããŸãã
gulp-svgstore-æ¥ç¶ãããŠãããã¹ãŠã®SVGãã¡ã€ã«ãããŒãžããããã«äœ¿çšããããã«
<symbol>
ãšããŠHTMLã«æžã蟌ã¿ãŸãã
gulp-imacssã¯ãCSSã«æ¥ç¶ãããŠããPNGãJPGãSVGç»åãããŒã¿URIã«èªåçã«å€æããéåžžã«äŸ¿å©ãªãŠãŒãã£ãªãã£ã§ãã
ç»åå§çž®çšã®gulp-imageminããã³gulp -tinypng ã
gulp-spritesmith-èªåã¹ãã©ã€ãçæã
ãã®ä»
gulp-grunt-Gulpã® Gruntãã©ã°ã€ã³ãå®è¡ã§ããŸãã
äžè¶³ããŠãããã®ïŒ
grunt-html-buildã¯ãŠãããŒãµã«ã¬ã€ã¢ãŠãã¢ã·ã¹ã¿ã³ãã§ãã ãã©ã°ã€ã³ã¯ããœãŒã¹ãã¡ã€ã«ãçµåããHTMLã®å®å šãªãã³ãã¬ãŒã/ãããã¯ãäœæã§ããŸãã ããã§ãåæ§ã®ã¿ã¹ã¯ã§ã¯ã grunt-include-replaceã¯éåžžã«åªããŠããŸãã
grunt-penthouseãšgrunt-criticalcss-ãããžã§ã¯ãã®ã¯ãªãã£ã«ã«ãã¹ãèªåçã«èŠã€ããŸãã ããã©ãŒãã³ã¹ã«é¢ããéèŠãªãã€ã³ããããã«ã€ããŠã¯ã ããã§è©³ãã説æããŸã ã
grunt-shipit-Shipitã§ãããã€ãèªååããŸãã
grunt-githooks - Git HooksãGruntã¿ã¹ã¯ã«ãã€ã³ãããŸã ã
grunt-gitbook-çŽ æŽãããGitBookãŠãŒãã£ãªãã£ã䜿çšããŠããã¥ã¡ã³ããäœæããŸãã
grunt-conventional-changelog -Gitã®ã³ãããã«åºã¥ããŠå€æŽã®ãªã¹ããçæããŸãã
grunt-proxyããã³grunt-connect-proxy-éçºäžã®ãããã·APIåŒã³åºãã®ãµããŒããæ¥ç¶ããŸãã
grunt-phantomasã¯ããããžã§ã¯ãã®ããã©ãŒãã³ã¹ã枬å®ããããã®åªããããŒã«ã§ãã
grunt-usebanner-ãœãŒã¹ãã¡ã€ã«ãšgrunt-figletã«ãããŒïŒèäœæš©ãŸãã¯ASCIIããããŒïŒãè¿œå ããŠãããã䜿çšã§ããããã«ããŸãã
gulp-watchã¯ãGulpãã©ã°ã€ã³ã·ã¹ãã ã®åºç€ã§ãã æå®ããããã¹ãŠã®ãã¡ã€ã«ãŸãã¯ãã£ã¬ã¯ããªå šäœãç£èŠããå€æŽããã£ãå Žåã¯ãæ§æã§èª¬æãããŠããã¿ã¹ã¯ãå®è¡ããŸãã
gulp-notify -Gulpãã·ã¹ãã ã¡ãã»ãŒãžã®åœ¢åŒã§ãã«ããããšãã«ãšã©ãŒã衚瀺ããŸããæãéèŠãªã®ã¯ãããŸããŸãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§æ©èœãããã®ã§ãã
gulp-git - gitã³ãã³ãã䜿çšã§ããŸãã
gulp-jsdocã¯ã JSDoc3ã«åºã¥ãããã¥ã¡ã³ããžã§ãã¬ãŒã¿ãŒã§ãã
gulp-revã¯äŸ¿å©ãªãªããžã§ã³ãã©ã°ã€ã³ã§ãã
gulp-release-ãããžã§ã¯ãã®ããŒãžã§ã³ãå¶åŸ¡ã§ããŸãã
gulp-bump-ãªããžããªãç£èŠããpackage.jsonãšgulp-updateãæŽæ°ããããã±ãŒãžèªäœãæŽæ°ããŸãã
gulp-bower-files-å¿ èŠãªãã¹ãŠã®Bowerã³ã³ããŒãã³ããæ¥ç¶ããŸãã
gulp-removelogs-ãã°ãèªåçã«åé€ããŸãã
gulp-preprocessã¯ãã€ã³ã¹ããŒã«ãããæ§æãåç §ããããªããã»ããµã§ãã
gulp-duration-ã¿ã¹ã¯ã®å®è¡æéã衚瀺ããŸãã
gulp-changedããã³gulp-newer-å€æŽããããã¡ã€ã«ã«å¯ŸããŠã®ã¿ã¿ã¹ã¯ãå®è¡ããŸãã
gulp-connectã¯ãéçãµã€ãçšã®ã·ã³ãã«ãªWebãµãŒããŒã§ãã
gulp-shell-ã·ã§ã«ã³ãã³ããå®è¡ã§ããŸãã
gulp-ssh -SSHããã³SFTPçµç±ã§æ¥ç¶ããæ©èœãæäŸããŸãã
gulp-zip-ãã©ã«ããŒãšãã¡ã€ã«ãã¢ãŒã«ã€ãããŸãã
gulp-cleanããã³gulp-copy-æå®ããããœãŒã¹ãããããåé€ããŠã³ããŒããŸãã
gulp-filesize-ãã¡ã€ã«ãµã€ãºãèªã¿åãå¯èœãªåœ¢åŒã§è¡šç€ºããŸãã
gulp-util -Gulpãã©ã°ã€ã³ãéçºããããã®ããŸããŸãªãŠãŒãã£ãªãã£ã
ã³ã³ãã€ã©ãŒ
gulp-less -CSSã®ã¬ã¹ã
gulp-sass -CSSã®SASS / SCSSã
gulp-compass -CSSã®ã³ã³ãã¹ä»ãSASSã
gulp-stylus -CSSã®ã¹ã¿ã€ã©ã¹ã
gulp-coffee -JavaScriptã®CoffeeScriptã
gulp-jade -HTMLã®çã
gulp-handlebars- JSTã®ãã³ãã«ããŒãã³ãã¬ãŒãã
gulp-jst -JSTã®ã¢ã³ããŒã¹ã³ã¢ãã³ãã¬ãŒãã
gulp-react -JSTã§ã®Facebook Reactã®JSXãã³ãã¬ãŒãã
gulp-nunjucks -JSTã®Nunjucksãã³ãã¬ãŒãã
gulp-dustjs -JSTã®ãã¹ããã³ãã¬ãŒãã
gulp-angular-templatecache -JSTã®AngularJSãã³ãã¬ãŒãã
æåŸã«
psi-ã¬ããŒãä»ãã®PageSpeed Insightsã
tmi -TMIïŒToo Many ImagesïŒ-ãŠã§ãäžã§ç»åã®éã¿ãçºèŠããŸãã
ngrok-ããŒã«ã«ãã¹ããžã®ã€ã³ããã¹ãã¯ãããããã³ãã«ã
pageresã¯ãããŸããŸãªè§£å床ã§ãµã€ãã®ã¹ã¯ãªãŒã³ã·ã§ãããäœæããããã®äŸ¿å©ãªãŠãŒãã£ãªãã£ã§ãã
ãããããããã€ãã®èªååã¡ãœããã¯ããšãã£ã¿ãŒã§çŽæ¥äœ¿çšããæ¹ã䟿å©ã§ã-SublimeTextã®æé©ãªãã©ã°ã€ã³ã
matchdep-äŸåé¢ä¿ãæ£ããèšè¿°ããã®ã«åœ¹ç«ã¡ãŸãã