UNPKG

adgile

Version:

An easy-to-use automated front-end setup.

79 lines (72 loc) 6 kB
### KNOWN BUGS: ### TODO's: - [ ] Migrate Node Sass to Dart Sass - [ ] Investigate use of ES6 Arrow Functions to simplify codebase - [ ] Adding new view js files doesn't seem to add them to gaze - [ ] Allow uncss when working with non-html files (eg. php, blade.php, ...) by adding localhost as input HTML - [ ] Send email test directly to emailonacid - [ ] Remove deleted / renamed files from export folder with gulp-sync-files (https://www.npmjs.org/package/gulp-sync-files/) - [ ] Detect changes in "other" files without restarting Adgile - [ ] Report errors to console for JS (same as CSS) - [ ] Show an overview of page links when there is no index.html - [ ] Investigate sourcemaps for SASS - [ ] Investigate sourcemaps for JS through Babel - [ ] Add option in config to "cache" certain files or folders in the export folder, so that they aren't deleted on build (bv. "cover.png" & "thumb.png" bij Veeva) - [ ] Implement automatic detection of correct partials when working with multiple languages /nl /fr /en (See question Frédéric, Slack 1 Sep 2020), URL extraction - [ ] Implement inline if/else structures for variables - [ ] change adg init to create new boilerplate folder in the current directory, not empty the folder (safety reasons) - Blackfire bekijken voor performance testing ### A list of things to explore: - [ ] Watch changes on config and folders like fonts/video, and rebuild (https://github.com/leny/gulp-supervisor & https://github.com/JacksonGariety/gulp-nodemon & https://www.npmjs.org/package/keepup/) - [ ] See if scripts tasks can be made faster with gulp-remember (https://github.com/ahaurw01/gulp-remember) - [ ] Maybe do something with icon fonts from SVG files (https://www.npmjs.org/package/gulp-fontcustom/ or https://github.com/nfroidure/gulp-iconfont or https://github.com/nfroidure/gulp-svgicons2svgfont) - [ ] Make it possible to use LESS (https://www.npmjs.org/package/gulp-less/) - [ ] Make it possible to use Stylus (https://www.npmjs.org/package/gulp-stylus/) - [ ] Maybe replace some CSS processing modules with gulp-pleeease (https://www.npmjs.org/package/gulp-pleeease/) - [ ] Try having critical css inlined (http://css-tricks.com/authoring-critical-fold-css/ & https://github.com/pocketjoso/penthouse/#as-a-node-module OR https://github.com/filamentgroup/criticalcss) - [ ] Use SassDoc (https://github.com/SassDoc/gulp-sassdoc) - [ ] Remove deleted / renamed files from export folder with gulp-sync-files (https://www.npmjs.org/package/gulp-sync-files/) - [ ] Replace Ender by Cash when it gets out of alpha (https://github.com/kenwheeler/cash) - [ ] Check out HeadJS (http://headjs.com) - [ ] Implement gulp-foreach (https://www.npmjs.org/package/gulp-foreach/) - [ ] Simpler watch setup > https://gist.github.com/Snugug/2dc9ff47ce4b4acb28f6 - [ ] Make CSS email inliner more customizable by using gulp-tap > https://github.com/geejs/gulp-tap/wiki - [ ] Look for an easier alternative for partials instead of Handlebars, with risk of losing templating features (https://www.npmjs.com/package/gulp-file-include) - [ ] Look at options for email development, such as injecting CSS inline at the top with gulp-inject (instead of external stylesheets) - [ ] Consider switching from node-progress to cli-progress for progress bar in console (https://www.npmjs.com/package/cli-progress). This may fix failure to redraw the bar on some machines. ### Take a look at these plugins also - CDN Solution https://www.npmjs.org/package/gulp-cdnizer/ - https://www.npmjs.org/package/gulp-log-capture - https://www.npmjs.org/package/gulp-static-handlebars - https://www.npmjs.org/package/gulp-if-else - https://www.npmjs.org/package/gulp-headerfooter - https://www.npmjs.org/package/gulp-htmlrefs OR https://www.npmjs.org/package/gulp-rev-replace - https://www.npmjs.org/package/favicons ### Done - [x] Fix reloading when a layout/partial changes - [x] Find a better/smarter templating system https://www.npmjs.org/package/gulp-file-insert/ - [x] Fix sass and htmlmin error crashes - [x] Add W3C validation option to config (https://www.npmjs.org/package/gulp-w3cjs/) - [x] ^ Fix logging by gulp-connect (~~muting https://www.npmjs.org/package/mute-stream~~) - [x] Auto-check for updates (~~http://stackoverflow.com/questions/20686244/install-programmatically-a-npm-package-providing-its-version and http://stackoverflow.com/questions/11949419/nodejs-npm-show-latest-version-of-a-module~~ https://github.com/yeoman/update-notifier) - [x] Make box-sizing work through inherit (http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice) - [ ] ~~Check out csscss (https://www.npmjs.org/package/gulp-csscss/)~~ - [x] Properly test Uncss - [x] Pass gulp-ruby-sass errors instead of uncss notification - [x] Remove ender and underscore map from underscore.js - [x] Turn aliasing into state, and extend to doc/button/form module - [x] Fix url in update notice - [x] Fix jshint logs appearing in the middle of the progressbar - [x] A build starting with a Sass error will result in pages without (a) css file(s) - [x] Disable (and warn about disabling of) w3c validation when not ".html" - [x] Remove revisionCaching - [x] Make sure a key can be used with PSI (without any uncaught TypeError) - [x] Add css inliner for emails - [x] Transition from gulp sass plugins to PostCSS - [x] Combine Media Queries: true --> Check sorting, because they don't get overwritten in correct order now - [x] jQuery is not always loaded before main.js in production (-p / -sp) - [x] In complex JS-projects, an internal error is thrown in production (-p / -sp) - [x] Automatically add ?v=timestamp to css & js files - [x] Implement Babel to compile ES6 to legacy browser compatibility - [x] css-mqpacker no longer supported. Find a replacement package. - [x] Find a way for Babel to only compile main JS file, not libs