Hang on, I'm not saying flux is dead, or that redux isn't amazing.
Okay ...
Most everybody is familiar with flux by now:
User Interaction --event data-->
Action Creator --action-->
Dispatcher --payload-->
| #!/bin/bash | |
| if [ "$EUID" -ne 0 ] | |
| then echo "Please run as root" | |
| exit | |
| fi | |
| apt-get install pkg-config libmagickwand-dev -y | |
| cd /tmp | |
| wget https://pecl.php.net/get/imagick-3.4.0.tgz | |
| tar xvzf imagick-3.4.0.tgz |
| This is now part of craft-scripts: | |
| https://github.com/nystudio107/craft-scripts |
Hang on, I'm not saying flux is dead, or that redux isn't amazing.
Okay ...
Most everybody is familiar with flux by now:
User Interaction --event data-->
Action Creator --action-->
Dispatcher --payload-->
| <?php | |
| /** | |
| * Register site routes. | |
| * | |
| * @return array | |
| */ | |
| public function registerSiteRoutes() | |
| { | |
| return array( |
Handy helpers for controlling visibility of elements until Vue has compiled.
Use like:
<div v-cloak>
<h1>
<span class="v-cloak--inline">Loading...</span> <!-- Only displayed before compiling -->
<span class="v-cloak--hidden">{{ post.title }}</span> <!-- Hidden until compiling is finished -->
Hi Nicholas,
I saw you tweet about JSX yesterday. It seemed like the discussion devolved pretty quickly but I wanted to share our experience over the last year. I understand your concerns. I've made similar remarks about JSX. When we started using it Planning Center, I led the charge to write React without it. I don't imagine I'd have much to say that you haven't considered but, if it's helpful, here's a pattern that changed my opinion:
The idea that "React is the V in MVC" is disingenuous. It's a good pitch but, for many of us, it feels like in invitation to repeat our history of coupled views. In practice, React is the V and the C. Dan Abramov describes the division as Smart and Dumb Components. At our office, we call them stateless and container components (view-controllers if we're Flux). The idea is pretty simple: components can't
| /* bling.js */ | |
| window.$ = document.querySelector.bind(document); | |
| window.$$ = document.querySelectorAll.bind(document); | |
| Node.prototype.on = window.on = function(name, fn) { this.addEventListener(name, fn); }; | |
| NodeList.prototype.__proto__ = Array.prototype; | |
| NodeList.prototype.on = function(name, fn) { this.forEach((elem) => elem.on(name, fn)); }; |
| * {} | |
| tag {} | |
| [attribute] {} | |
| [attribute="value"] {} | |
| .class {} |
// please comment if you know of other BOOKS (not considering blogs just yet) on ES6 that are out or coming out
| # Convert an animated video to gif | |
| # Works best for videos with low color palettes like Dribbble shots | |
| # | |
| # @param $1 - video file name like `animation.mov` | |
| # @param @optional $2 - resize parameter as widthxheight like `400x300` | |
| # | |
| # Example: vidtogif animation.mov 400x300 | |
| # Requirements: ffmpeg and gifsicle. Can be downloaded via homebrew | |
| # | |
| # http://chrismessina.me/b/13913393/mov-to-gif |