Skip to content

Instantly share code, notes, and snippets.

@tbremer
tbremer / cache.js
Created January 12, 2018 21:52
Simple HTTP Cache
import cancelableFetch from '../utils/cancelableFetch';
/* 1 day, 1 hour, 5 minutes, 60 seconds, 1000 ms */
const FIVE_MINUTES = (1 * 1 * 5 * 60 * 1000);
const DEFAULT_OPTIONS = { method: 'get' };
function createNull() {
return Object.create(null);
}
@tbremer
tbremer / static.exs
Created December 1, 2017 20:48
Elixir static server
:inets.start
here = '#{Path.absname('./')}'
localhost = {127,0,0,1}
options = [
port: 1337,
server_name: 'test_server',
server_root: here,
document_root: here,
]
:inets.start(:httpd, options)
@tbremer
tbremer / index.js
Created November 27, 2017 21:10
requirebin sketch
// Welcome! require() some modules from npm (like you were using browserify)
// and then hit Run Code to run your code on the right side.
// Modules get downloaded from browserify-cdn and bundled in your browser.
const css = `@block list {
margin: 0;
@element item {
padding: .5rem 1rem;
@tbremer
tbremer / index.js
Created November 27, 2017 21:09
requirebin sketch
// Welcome! require() some modules from npm (like you were using browserify)
// and then hit Run Code to run your code on the right side.
// Modules get downloaded from browserify-cdn and bundled in your browser.
const css = `@block list {
margin: 0;
@element item {
padding: .5rem 1rem;
@tbremer
tbremer / index.js
Created November 3, 2017 20:27
requirebin sketch
const bem = require('postcss-atrule-bem');
const nested = require('postcss-nested');
const css = `
@block block {
width: 100px;
height: 100px;
background: red;
div {
@tbremer
tbremer / drag-n-drop.js
Last active May 7, 2017 14:48
Mouse and Touch enabled Drag and Drop
let mover;
let offsets;
let position;
function addEvent(type, callback, target = document) { target.addEventListener(type, callback, false); }
function removeEvent(type, callback, target = document) { target.removeEventListener(type, callback); }
function offsetPosition(target) {
let node = target;
let X = 0;
@tbremer
tbremer / parents-until-match.js
Created May 5, 2017 21:10
Parents Until Match
/**
* @param {Node || Element}
* @param {CSS Selector}
* @return {Node || null}
*/
function parentsUntilMatch(target, filter) {
if (!target || target.nodeType === 9) return null;
switch (true) {
case ('matchesSelector' in target):
if (target.matchesSelector(filter)) return target;
# -*- mode: ruby -*-
# vi: set ft=ruby :
#
Vagrant.configure("2") do |config|
##
## SET UP THE BOX BASICS
##
config.vm.box = "ubuntu/trusty64"
config.vm.provider "virtualbox" do |v|
@tbremer
tbremer / README.md
Last active April 20, 2017 13:44
Agile Coach Quotes

"We honestly don't like to work with requirements"

  • Said in first meeting with client

"Typically we don't work in sprints"

  • Said after client wanted to know the cadence our development team works

"There's no such thing as scope creep."

  • Said after client told us they like to make a lot changes while developing a product.
@tbremer
tbremer / README.md
Last active February 13, 2017 23:50
Director.js