Skip to content

Instantly share code, notes, and snippets.

View Raynos's full-sized avatar

Jake Verbaten Raynos

View GitHub Profile
var render = require('virtual-dom/render');
var diff = require('virtual-dom/diff');
var enqueue = require('virtual-dom/enqueue');
var patch = require('virtual-dom/patch');
module.exports = partial;
/*
type Widget := {
init: () => DOMElement,

exec-callback

Like child_process.exec but uses a node style callback

Example

var exec = require('exec-callback');

exec('git log', function (err, out) {

npm-shrinkwrap

A consistent shrinkwrap tool

Usage

$ npm-shinkwrap

This will run shrinkwrap and then purge your shrinkwrap file of any from fields that are not needed.

var marked = require('marked');
var findIndex = require('lodash.findindex');
var doctoc = require('doctoc/lib/transform');
var fs = require('fs');
var path = require('path');
/*
WIP to automate the inclusion of various documentation into
the README.
function main(initialState, render) {
...
return {
update: function (currentState) {},
elem: ...
}
}
var state = ObservHash({
var h = require("virtual-dom/h")
var extend = require("xtend")
var Delegator = require("dom-delegator")
var uuid = require("uuid")
var event = require("dom-delegator/event")
/* example function
function render() {
return h("div", [
h("span", "Details hello world example"),
var counter = 0;
var ticks = 0;
setImmediate(function countTick() {
ticks++
setImmediate(countTick)
})
var todo = new ImObject({
(*
A Diffable<T> can be embedded in a VirtualDOMNode
When `diff(left, right)` encounters a `Diffable` in
`right` it will invoke `right.diffable(left, right)`
When doing so `left` could be another `Diffable` or a
previous VirtualDOMNode, `Diffable` must handle -
both cases.
@Raynos
Raynos / diff.js
Last active August 29, 2015 13:56
function diff(left, right) {
if (isThunk(left) && isThunk(right)) {
var argsLeft = getArgs(left)
var fnLeft = getFn(left)
var argsRight = getArgs(right)
var fnRight = getFn(right)
if (fnLeft !== fnRight) {
var tree = fnRight.apply(null, argsRight)
var oldTree = getTree(left)
var toElement = require("virtual-dom/render")
var diff = require("virtual-dom/diff")
var patch = require("virtual-dom/patch")
var raf = require("raf").polyfill
module.exports = main
function main(obs, render, elem) {
var currTree = render(obs())
var rootNode = toElement(currTree)