(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
<head> | |
<title>meteor_servercall</title> | |
</head> | |
<body> | |
{{> simple}} | |
{{> passData}} | |
</body> | |
<template name="simple"> |
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<script type="text/javascript" src="https://d3js.org/d3.v3.min.js"></script> | |
<script type="text/javascript" src="./tooltip.js"></script> | |
</head> | |
<body> | |
<div class="viz"></div> | |
<script type="text/javascript"> |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
https://github.com/rogerwang/node-webkit | |
https://github.com/atom/atom-shell | |
https://github.com/adobe/brackets-shell/ | |
http://documentup.com/arturadib/node-qt | |
http://deskshell.org/demo-docs/tutorials/start.htm | |
http://www.sencha.com/blog/using-native-apis-in-sencha-desktop-packager | |
http://blogs.telerik.com/kendoui/posts/12-12-04/desktop_apps_the_final_frontier_for_html5 | |
http://www.tidesdk.org/ | |
http://www.awesomium.com/ | |
https://developers.pokki.com/ |
Custom recipe to get OS X 10.10 Yosemite running from scratch, setup applications and developer environment. I use this gist to keep track of the important software and steps required to have a functioning system after a semi-annual fresh install. On average, I reinstall each computer from scratch every 6 months, and I do not perform upgrades between distros.
This keeps the system performing at top speeds, clean of trojans, spyware, and ensures that I maintain good organizational practices for my content and backups. I highly recommend this.
You are encouraged to fork this and modify it to your heart's content to match your own needs.
let Person = (() = > { | |
let firstNameProperty = Symbol('firstName'), | |
lastNameProperty = Symbol('lastName'), | |
renameMethod = Symbol('rename'); | |
return class Person { | |
constructor (first, last) { | |
this[renameMethod](first, last); | |
} | |
fullName () { |
Features:
Relay.fetch(graphqlQuery)
returns subscribtion that could change over time by mutation queries.Relay.update(m: UpdateMutation)
optimistically updates resource in all previous queries that contains updated resource.Relay.update(m: DeleteMutation)
optimistically deletes resource from all previous queries that contains deleted resource.Relay.update(m: CreateMutation)
pessimistically creates resource and executes again all previous queries.id
key in graphql response explained as resources.
Arrays, objects without id
and scalars explained as static properties.export const LOGIN_REQUEST = 'LOGIN_REQUEST'; | |
export const LOGIN_SUCCESS = 'LOGIN_SUCCESS'; | |
export const LOGIN_FAILURE = 'LOGIN_FAILURE'; | |
export const LOGOUT = 'LOGOUT'; |
Why would you want to do this? Because you often don't need more. It's nice to not have to think about your "router" as this big special thing.
Instead, with this approch, your app's current pathname
is just another piece of state, just like anything else.
This also means that when doing server-side rendering of a redux app, you can just do:
var app = require('your/redux/app')
var React = require('react')
// give it a name so it reuses the same window | |
var win = window.open(null, "redux-devtools", "menubar=no,location=no,resizable=yes,scrollbars=no,status=no"); | |
// reload in case it's reusing the same window with the old content | |
win.location.reload(); | |
// wait a little bit for it to reload, then render | |
setTimeout(function() { | |
React.render( | |
<DebugPanel top right bottom left > |