git clone [email protected]:branneman/dotfiles.git ~/.dotfiles
ln -s ~/.dotfiles/vscode-settings.json "~/Library/Application Support/Code/User/settings.json"
- Open the Command Palette (
⌘+⇧+P)
| #!/usr/bin/env node | |
| const fetch = require('node-fetch') | |
| const ip = require('ip') | |
| const os = require('os') | |
| const env = require('./.env.json') | |
| const endpoint = 'https://dns.api.gandi.net/api/v5/' | |
| const newip = `${ip.address()}` | |
| const domain = env.domain |
| const crypto = require('crypto') | |
| const { promisify } = require('util') | |
| const pbkdf2 = promisify(crypto.pbkdf2) | |
| module.exports = { createHashPasswordFn, isPasswordCorrect } | |
| /** | |
| * @typedef {Object} HashPassword | |
| * @property {String} hash | |
| * @property {String} salt |
| const indexOf = node => list => { | |
| const guess = (min, max) => { | |
| const index = Math.floor((max - min) / 2) + min | |
| if (list[index] === node) { | |
| return index | |
| } else if (list[index] < node) { | |
| min = index + 1 | |
| } else { | |
| max = index - 1 | |
| } |
git clone [email protected]:branneman/dotfiles.git ~/.dotfiles
ln -s ~/.dotfiles/vscode-settings.json "~/Library/Application Support/Code/User/settings.json"
⌘ + ⇧ + P)| /** | |
| * @module GTMEventTracking | |
| * @example | |
| * <a | |
| * data-module="event-tracking/GTMEventTracking" | |
| * data-payload='{"event":"EventOpenGoogle"}' | |
| * href="https://google.com/" target="_blank"> | |
| * Click me | |
| * </a> | |
| */ |
https://en.wikipedia.org/wiki/Comparison_of_American_and_British_English
https://en.wikipedia.org/wiki/American_and_British_English_pronunciation_differences
https://en.wikipedia.org/wiki/American_and_British_English_grammatical_differences
https://en.wikipedia.org/wiki/American_and_British_English_spelling_differences
https://en.wikipedia.org/wiki/Lists_of_words_having_different_meanings_in_American_and_British_English
An explanation of JavaScript's pass-by-value, which is unlike pass-by-reference from other languages.
| // FP Lenses | |
| const lens = get => set => ({ get, set }); | |
| const view = lens => obj => lens.get(obj); | |
| const set = lens => val => obj => lens.set(val)(obj); | |
| const over = lens => fn => obj => set(lens)(fn(view(lens)(obj)))(obj); | |
| const lensProp = key => lens(prop(key))(assoc(key)); |
| import { raf } from 'utils/eventHelpers'; | |
| class Carousel { | |
| constructor(element, options) { | |
| this._element = element; | |
| this._options = Object.assign(Carousel.options, options); | |
| this._refs = { |