Skip to content

Instantly share code, notes, and snippets.

Avatar
Welcome to the Thunder Dome

Frederik Krautwald Frikki

Welcome to the Thunder Dome
View GitHub Profile
@briancavalier
briancavalier / lazy-pair.js
Last active Oct 12, 2017
Fun with a Lazy type and pairs
View lazy-pair.js
// Pair helpers
// Map the first element of a pair
const first = <A, B, C> (f: A => B, [a, c]: [A, C]): [B, C] =>
[f(a), c]
// Map the second element of a pair
const second = <A, B, C> (f: B => C, [a, b]: [A, B]): [A, C] =>
[a, f(b)]
@briancavalier
briancavalier / except.js
Last active Sep 7, 2017
A simple Either with added exception semantics, like Haskell ExceptT
View except.js
// @flow
import { curry2, curry3 } from '@most/prelude'
export type Except<E, A> = Exception<E, A> | Result<E, A>
export const result = <E, A> (a: A): Except<E, A> =>
new Result(a)
export const throwError = <E, A> (e: E): Except<E, A> =>
new Exception(e)
@RadValentin
RadValentin / yarn.unlock.md
Last active Feb 9, 2021
Solve `yarn.lock` or `package.json` conflicts without losing your mind
View yarn.unlock.md

NOTE: This guide is ONLY for devs who don't want to edit their yarn.lock file by hand. If you don't care about that please carry on.


So you've pulled the latest master

git checkout master
git pull
@TylorS
TylorS / perfect_functional_language.md
Last active Feb 26, 2017
The perfect functional web application language, according to me :)
View perfect_functional_language.md

Language Specification Wishes

The desire to create a new language has come from my own experiences in programming in a framework I’ve built, Motorcycle.js and the language TypeScript. Motorcycle is very similar to the more popular project Cycle.js. In my current place of employment we are building a rather large and complex application and we have felt the language barriers of ECMAScript and TypeScript much more than we have the programming patterns we have come to use.

This is, currently, a very informal and non-exhaustive list of things I wish a single programming language would have. This language would likely to be very opinionated, and geared towards functional and reactive web applications. In many ways, but not all, I’d like to see a language designed around the programming patterns of Cycle and Motorcycle.

I hope to develop this language in the future, unless someone else beats me to it! Following this is a

View togglOnTrello.user.js
// ==UserScript==
// @name Toggl on Trello
// @namespace http://tampermonkey.net/
// @version 0.4
// @description Shows toggl entries that match C### where ### is the card number.
// @author sdebaun@sparks.network
// @match https://trello.com/c/*/*
// @match https://trello.com/b/*/*
// @require https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant GM_setValue
@wclr
wclr / cycle-state-ramda.md
Last active Apr 6, 2018
A way to handle state in cycle.js
View cycle-state-ramda.md

A way to handle state in cycle.js

Simple state management with xstream and ramda, in more transparent fashion than onionify

import * as R from 'ramda'

// first we create factory for making special state stream 
// that will hold our stream value and will be modified with supplied streams of reducers
type StateReducer<T> = (state: T) => T
View divs.js
h('div.container', [
h('label.nameLabel', 'Name:'),
h('input.myinput', {attributes: {type: 'text'}}),
h('hr'),
h('h1.greeting', `Hello ${name}`)
])
// or
div('.container', [
@kaosat-dev
kaosat-dev / README.md
Last active Sep 29, 2015
Cycle.js tips & tricks
View README.md

Cycle.js tips and tricks

Inline SVGs using JSX

inline svgs seem to have issues when using JSX syntax, so this is a possible workaround:

@paulirish
paulirish / what-forces-layout.md
Last active Apr 16, 2021
What forces layout/reflow. The comprehensive list.
View what-forces-layout.md

What forces layout / reflow

All of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout*. This is also called reflow or layout thrashing, and is common performance bottleneck.

Generally, all APIs that synchronously provide layout metrics will trigger forced reflow / layout. Read on for additional cases and details.

Element APIs

Getting box metrics
  • elem.offsetLeft, elem.offsetTop, elem.offsetWidth, elem.offsetHeight, elem.offsetParent
@BenMorel
BenMorel / viewport-units-ios.scss
Last active Nov 20, 2020
SCSS mixin to support vh and vw units on all iOS Safari versions. Based on an idea by Patrick Burtchaell's: https://gist.github.com/pburtchaell/e702f441ba9b3f76f587
View viewport-units-ios.scss
/**
* Fix for vw, vh, vmin, vmax on iOS 7.
* http://caniuse.com/#feat=viewport-units
*
* This fix works by replacing viewport units with px values on known screen sizes.
*
* iPhone 6 and 6 Plus cannot run iOS 7, so are not targeted by this fix.
* Target devices running iOS 8+ will incidentally execute the media query,
* but this will still produce the expected result; so this is not a problem.