🍬 Bublé-icious Tap(e) Testing Harness 🍬
🍬 6 feats for YOU, NOT THEM! 🍬
Youtube Video https://www.youtube.com/watch?v=iF07mccxIWM
🍬 Easy to Open Package Container
Don't you hate when you get a package and it's difficult to open? Built on conventions. Use the best tooling for the job!
Blow Your First Buble!
A "buble" is a self contained module that runs alongside your code within a safe context. Best of all, your code can't peek inside the "buble" and the buble won't mess up your code!
√ Full control over your buble's console output √ Buble can require modules (builtin and external) 💖 Rollup 💖 √ Great for running test suites without the need to save to a directory!
$ bubletape piece.spec.es
Save When You're Finished!
This will rollup your pieces to a specified destination. Great for postinstall distribution!
$ bubletape piece.es --destination ./under/table.js
If UTF-8 is available to the terminal
$ 🍬 # No, cereally this works!
🍬 6 Ingredients
- Asset Bundling
- Instantaneous feedback
- .es File extension support _(It's about time!)
- Process SASS-like syntax to cross-browser compatible CSS w/ PostCSS
- Choose between a browser-based or headless TAP testing harness w/ jsDOM
- Convert latest ECMAScript features down to cross-browser compatible ES2015 w/ Buble
- "Set it and forget it" ES6 module loading & Dead Code Elimination (DCE) w/ Rollup.js
🍬 Best of All It's Sugar Free!
Upcoming features Enjoy long-lasting taste for hours and hours! --sugar
- SASS-like Sugar StyleSheet conversion to cross-browser compatible CSS
- Rollup ECMAScript modules without converting to Javascript ES2015 --sugar-styles (enable SASS-like Sugar StyleSheets or disable buble) --sugar-rollup Rollup ECMAScript modules without converting to Javascript ES2015
🍬 Instructions:
- Start off by chewing on one piece of Buble Tape
- Rollup as much as you can chew! (rollup.config.js)
- Blow Bubles! (Run code safely contained inside bubles) (buble config perhaps?)
- Say "SWEET!"
🍬 Add Sugar (PostCSS & SugarSS)
Coming Soon
Why kids like Buble Tape
$ bubletape strawberry.spec.es
Why parents like Buble Tape (Custom Configuration)
Coming Soon
$ bubletape #WIP
What happens when my Buble Tape burst?
Exceptions if you are watching will continue running
Watch what you eat!
Coming Soon
$ bubletape --watch strawberry-spec.es # WIP
*Warning: Consuming TOO MUCH Buble Tape
🍬 Resources
We encourage trying out buble - http://buble.surge.sh
https://github.com/rstacruz/tape-watch https://github.com/leebyron/rollup-plugin-async/blob/master/index.js https://github.com/sairion/buble-loader https://github.com/yamafaktory/buble-react-rollup-starter https://github.com/garthenweb/bubleify https://github.com/rollup/rollup-pluginutils https://github.com/eugeneware/redtape/blob/master/index.js
https://github.com/nodejs/node-v0.x-archive/issues/9211 https://github.com/nodejs/node-v0.x-archive/issues/9211#issuecomment-134412415
Slow Requires https://kev.inburke.com/kevin/node-require-is-dog-slow/
Slow Module "evaluation" module.wrap() https://60devs.com/executing-js-code-with-nodes-vm-module.html#performance
Virtual Machine http://www.tothenew.com/blog/sandboxing-in-node-js-using-vm-module/
"VM modules got bumped from Unstable to Stable." - 2014 // https://strongloop.com/strongblog/node-js-v0-12-apis-breaking/#vm
Great Loaders Webpack - https://github.com/sairion/buble-loader/blob/master/index.js
🍬 Buble Tape Register
Buble will bind itself to node's require and automatically compile files on the fly. (Leaving your imports in tact by default module: false) In order of appearance
- .js, .es, .jsx, .es6
load many modules
https://github.com/rollup/rollup/issues/873
Reify ES2015 Module Loader
https://github.com/benjamn/reify
All Contributors
https://github.com/kentcdodds/all-contributors
How to Make Buble Tape https://www.youtube.com/watch?v=Fd5N9JUffxM