Skip to content

Instantly share code, notes, and snippets.

Avatar

Hunter Cassidy hunterc

View GitHub Profile
@hunterc
hunterc / Fetch.js
Created Oct 5, 2017
<Fetch> component
View Fetch.js
// @flow
import type { Element } from "react"
import React from "react"
import invariant from "invariant"
type State = {
data: Object | null,
error: Error | null,
fetching: boolean
@hunterc
hunterc / async-examples.js
Created Oct 22, 2016 — forked from developit/async-examples.js
Async Array utilities in async/await. Now available as an npm package: https://github.com/developit/asyncro
View async-examples.js
/** Async version of Array.prototype.reduce()
* await reduce(['/foo', '/bar', '/baz'], async (acc, v) => {
* acc[v] = await (await fetch(v)).json();
* return acc;
* }, {});
*/
export async function reduce(arr, fn, val, pure) {
for (let i=0; i<arr.length; i++) {
let v = await fn(val, arr[i], i, arr);
if (pure!==false) val = v;
View gist:458463c19796b924f2e8
var Table = React.createClass({
getInitialState: function () {
var data = [];
for (var r = 0; r < this.props.rows; r++) {
data[r] = [];
for (var c = 0; c < this.props.columns; c++) {
data[r][c] = 0;
}
}
return {
View routing-bug.js
import React from 'react';
import { render } from 'react-dom';
import { createStore, combineReducers } from 'redux';
import { Provider } from 'react-redux';
import { Router, Route, IndexRedirect } from 'react-router';
import { useBasename, createHistory } from 'history';
import { syncReduxAndRouter, routeReducer } from 'redux-simple-router';
const reducer = combineReducers({
routing: routeReducer
@hunterc
hunterc / reducers.js
Last active Aug 31, 2015
reducer stores
View reducers.js
function initialState() {
return [];
}
function selectReducer(state = initialState(), action) {
switch (action.type) {
case SELECT_OPTION:
return state.map(option =>
option.id === action.id
? { ...option, selected: true }
@hunterc
hunterc / django_complete.sh
Last active Aug 29, 2015
django auto complete
View django_complete.sh
brew tap homebrew/completions
brew install django-completion
# resource your profile
source ~/.bashrc
View spiral_matrix.py
!#/usr/bin/python
import sys
file = open(sys.argv[1])
lst = []
for line in file:
lst.append(line.strip().split())
View juggle-async.js
var http = require('http');
var urls = process.argv.slice(2);
var results = [];
var done = 0;
function printResults() {
for (var i = 0; i < 3; i++) console.log(results[i]);
}
@hunterc
hunterc / example_model.js
Created Jan 19, 2015
example mongoose model
View example_model.js
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var fields = {
// fields for model
name: String
};
var ModelSchema = new Schema(fields);
You can’t perform that action at this time.