Skip to content

Instantly share code, notes, and snippets.

View joeyfigaro's full-sized avatar
🦀
Becoming a Rustacean

Joey Figaro joeyfigaro

🦀
Becoming a Rustacean
View GitHub Profile
@joeyfigaro
joeyfigaro / SketchSystems.spec
Last active June 7, 2019 15:48
# Flight-Planning (KML Imports)
# Flight-Planning (KML Imports)
Flight Planning*
# User dropped / attached KML file via advanced settings
Empty*
add KML file -> KML Added
KML Added
remove KML file -> Empty
# Begins as soon as a user drops/attaches a KML file
Create Readable File
@joeyfigaro
joeyfigaro / _colors.scss
Created December 15, 2017 21:15
Personal approach for supporting multiple themes and organizing required colors
$shared: (
yellow: #fec52e,
purple: #ca4392,
blue: #2259e4,
sky_blue: #22ade1,
green: #1bdddb
);
$themes: (
dark: map-merge(
@joeyfigaro
joeyfigaro / devtools.js
Last active June 16, 2017 14:33
Real World Ramda: Readable Redux Stores (devtools.js)
// client/store/devtools.js
import { curry, is, ifElse, allPass, isNil, not, identity } from 'ramda';
import { compose } from 'redux';
import { Iterable } from 'immutable';
const windowExists = is(Object, window);
const extensionCompose = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;
const extensionComposeExists = not(isNil(extensionCompose));
const isImmutable = curry(Iterable.isIterable);
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<script id="jsbin-javascript">
@joeyfigaro
joeyfigaro / ramda-composition.js
Last active June 16, 2017 01:29
Ramda Composition Example
const props = ['users', 'lessons', 'favorites', 'history'];
const selectProps = pick(props);
const stringify = compose(
JSON.stringify,
selectProps
);
stringify({
sensitive: {
@joeyfigaro
joeyfigaro / configureStore.js
Created June 16, 2017 00:46
Ramda & Redux (when example)
function sayHello() {
return console.log('Hello.');
}
when(
equals(true, true),
sayHello
);
// -> Hello.
@joeyfigaro
joeyfigaro / configureStore.js
Last active June 16, 2017 00:45
Ramda & Redux (pick example)
store.subscribe(() => {
const state = store.getState();
storage.set('saved', pick(['lessons', 'auth', 'notifications'], state));
});
/*
{
saved: {
lessons: {...},
auth: {...},
@joeyfigaro
joeyfigaro / configureStore.js
Last active June 16, 2017 14:26
Real World Ramda: Configuring Your Redux Store
// client/store/configureStore.js
import { createStore } from 'redux';
import { compose, when, equals } from 'ramda';
import enhancer from 'client/store/enhancers';
import rootReducer from 'client/reducers';
function configureStore(initialState) {
const store = createStore(rootReducer, initialState, enhancer);
const addStoreToObj = obj => (obj.store = store);
@joeyfigaro
joeyfigaro / .hyper.js
Last active April 2, 2017 11:35
HyperJS Backup
// Future versions of Hyper may add additional config options,
// which will not automatically be merged into this file.
// See https://hyper.is#cfg for all currently supported options.
module.exports = {
config: {
// font family with optional fallbacks
fontFamily: 'Menlo, "DejaVu Sans Mono", Consolas, "Lucida Console", monospace',
// terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk)