| Relay | Apollo | |
|---|---|---|
| Built by | Facebook (Check out the project on GitHub) | Meteor (Check out the project on GitHub) |
| Frontend Technologies | Requires React / React Native and configuration of Babel plugin | Framework and platform agnostic (works with any JS framework such as React, Angular or Vue as well as on the native mobile platforms) |
| GraphQL API | Requires a certain structure in the GraphQL schema | Works with any GraphQL schema |
| Complexity | Slow learning curve: Lots of powerful magic happening behind the scenes | Low entrance barrier: Let's you get started quickly and involves more manual work for certain features |
| Flexibility | Almost no flexibility, strict rules how to |
| // Polyfill so we can run this in Node.js as well | |
| if (typeof atob !== 'function') { | |
| var atob = a => Buffer.from(a, 'base64').toString('binary') | |
| var btoa = b => Buffer.from(b).toString('base64'); | |
| } | |
| // 511 bytes after minify | |
| var a=[ | |
| ["#1b6f3f", "#10c5b4", "#ade4cd", "#29ec19"], | |
| ["#96bde8", "#246a85", "#3483e4", "#b168f6"], |
| var fs = require('fs'); | |
| require('shelljs/global'); | |
| const EXAMPLES_DIR = './node_modules/three/examples/js' | |
| const DEST_DIR = './src/js/lib/three/examples' | |
| mkdir('-p', DEST_DIR); | |
| const files = [ | |
| `${EXAMPLES_DIR}/loaders/GLTFLoader.js`, |
A top-level App component returns <Button /> from its render() method.
-
What is the relationship between
<Button />andthisin thatButton’srender()? -
Does rendering
<Button><Icon /></Button>guarantee that anIconmounts? -
Can the
Appchange anything in theButtonoutput? What and how?
Using Apple’s Aerial Screensavers on Ubuntu After coming across the [Aerial] (https://github.com/JohnCoates/Aerial) screensavers for Mac, and installing them, I decided that I had had enough of the graphics-demos of my Ubuntu Precise system. I hope to provide a simple guide on how to add them to your setup as well.
First, you need to install xscreensaver (for example with aptitude, but your distro should have it):
sudo aptitude install xscreensaverAs soon as I saw the new YouTube Player and its new morphing play/pause button, I wanted to understand how it was made and replicate it myself.
From my analysis it looks like YouTube is using [SMIL animations][1]. I could not get those animations to work on browsers other than Chrome and it appears [that they are deprecated and will be removed][2]. I settled for the following technique:
-
Define the icon
pathelements inside adefselement so that they are not drawn. -
Draw one icon by defining a
useelement whosexlink:hrefattribute points to one of thepaths defined in the previous step. Simply [changing this attribute to point to the other icon is enough to swap them out][3], but this switch is not animated. To do that, -
Replace the
usewith the actualpathwhen the page is loaded.
| This is the list of information compiled by scotjl off the Massdrop listed below. | |
| Original product drop - https://www.massdrop.com/buy/kc60-mechanical-keyboard Configurator web page - http://123.57.250.164:9128/ | |
| Flashing information - https://www.keychatter.com/2015/07/05/programming-the-kc60/ https://github.com/tmk/tmk_keyboard https://geekhack.org/index.php https://github.com/kairyu/tkg-toolkit | |
| Reviews - livingspeedbump - https://www.keychatter.com /2015/07/01/review-kc60-3/ | |
| USB cable sources - |
| /* | |
| * Steps | |
| * 1. Rename your gulpfile.js to gulpfile.babel.js | |
| * 2. Add babel to your package.json (npm install -D babel) | |
| * 3. Start writing ES6 in your gulpfile! | |
| */ | |
| import gulp from 'gulp'; // ES6 imports! | |
| import sass from 'gulp-sass'; | |
| var domIsReady = (function(domIsReady) { | |
| var isBrowserIeOrNot = function() { | |
| return (!document.attachEvent || typeof document.attachEvent === "undefined" ? 'not-ie' : 'ie'); | |
| } | |
| domIsReady = function(callback) { | |
| if(callback && typeof callback === 'function'){ | |
| if(isBrowserIeOrNot() !== 'ie') { | |
| document.addEventListener("DOMContentLoaded", function() { | |
| return callback(); |
| # oh-my-zsh Customized Bureau Theme | |
| ### NVM | |
| ZSH_THEME_NVM_PROMPT_PREFIX="(node-" | |
| ZSH_THEME_NVM_PROMPT_SUFFIX=")" | |
| ### RVM | |
| ZSH_THEME_RVM_PROMPT_PREFIX="(" | |
| ZSH_THEME_RVM_PROMPT_SUFFIX="" |