adgile
Version:
An easy-to-use automated front-end setup.
79 lines (72 loc) • 6 kB
Markdown
### 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