View People.coffee
# Finally, ensure that all of your JSX in your components is in raw JS
import React from 'react'
export class People extends React.Component
onPersonClick: (personId) => @context.router.push("/people/#{personId}")
render: ->
{ data } = @props
`(
<div>
<h1>People</h1>
View Readme.md

This was implemented for a real world application that was pulling in a large amount of data from multiple databases (SQL and MongoDB).

In order to improved TTFP (time to first page of results) and thus user-perceived performance, the API was converted to stream the results objects as it completed them.

Oboe.js allowed us to take advantage of that streaming API by parsing the incoming JSON stream on the browser-side.

View Readme.md

This was an experiment to come up with an efficient cache key generator for lat/lng origin/destination pairs.

It seemed to work pretty well, generating nearly a million keys in 66ms.

View debug.js
var each = require('amp-each');
var isFunction = require('amp-is-function');
function debugMethods(prototype, handler) {
each(prototype, function (prop, name) {
if (isFunction(handler)) return handler(prop, name);
if (isFunction(prop)) {
prototype[name] = addLogger(prop, name);
}
});
View readme.md

Install

  1. Save the script below as update-outdated in your path.
  2. run chmod +x /path/to/update-outdated
  3. run update-outdated from the root of your project
  4. if you'd like to auto-update and save updated versions to your package.json, run again like so update-outdated -f
View datepicker.html
<input class="addDatepicker" name="date">
View repo_status.sh
#!/bin/bash
reset=$(tput sgr0)
green=$(tput setaf 2)
cyan=$(tput setaf 6)
magenta=$(tput setaf 5)
bold=$(tput bold)
for arg in $( ls | egrep '^dsm-' ); do
(
cd "$arg"
if [ -e "./package.json" ]; then
View update_package.sh
#!/bin/bash
if [ $# -lt 2 ]; then
echo "Usage: update_package <directory> <package> [optional: <version>]"
exit 1
fi
if [ "$3" ]; then
version=$3
else
View findWhere.js
// returns first matching list member
function findWhere(list, props) {
var idx = 0;
var len = list.length;
var match = false;
var item, item_k, item_v, prop_k, prop_val;
for (; idx<len; idx++) {
item = list[idx];
for (prop_k in props) {
// If props doesn't own the property, skip it.
View findit.sh
# Recursive find in files with line numbers
find directory/ -name "*.html" -exec grep -ni "my search here" {} +