Skip to content

Instantly share code, notes, and snippets.

@danieldunderfelt
danieldunderfelt / index.js
Created June 12, 2016 16:10
Serializing and hydrating state with MobX
/* App creator */
import { extendObservable } from 'mobx'
import AppStore from '../app/AppStore'
export default (initialState = false) => {
const stores = {
App: AppStore
}
@ingramchen
ingramchen / gist:e2af352bf8b40bb88890fba4f47eccd0
Created April 5, 2016 12:58
ffmpeg convert gif to mp4, for best cross browser compatibility
### Full command line options
```
ffmpeg -f gif -i FOO.gif -pix_fmt yuv420p -c:v libx264 -movflags +faststart -filter:v crop='floor(in_w/2)*2:floor(in_h/2)*2' BAR.mp4
```
### Notie
* output mp4 is encoded with h264, support Firefox/Chrome/Safari in Windows, Mac OSX, Android, and iOS.
@wtfil
wtfil / index.js
Last active July 7, 2017 16:55
injection of redux's dispatch in react-router's onEnter hook
/*
* common react, redux staff here
*/
import {Router, createRoutes} from 'react-router';
import createBrowserHistory from 'history/lib/createBrowserHistory';
import rawRoutes from './routes';
import store from './store';
function mixStoreToRoutes(routes) {
return routes && routes.map(route => ({
@paulirish
paulirish / what-forces-layout.md
Last active July 26, 2026 09:05
What forces layout/reflow. The comprehensive list.

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
@ldong
ldong / download_egghead_videos.md
Last active November 17, 2025 13:01
download egghead videos

Download videos from egghead

Go to the egghead website, i.e. Building a React.js App

run

$.each($('h4 a'), function(index, video){
  console.log(video.href);
});
@patshaughnessy
patshaughnessy / gist:70519495343412504686
Last active August 6, 2025 02:14
How to Debug Postgres using LLDB on a Mac
This note explains how to build Postgres from source and setup to debug it using LLDB on a Mac. I used this technique to research this article:
http://patshaughnessy.net/2014/10/13/following-a-select-statement-through-postgres-internals
1. Shut down existing postgres if necessary - you don’t want to mess up your existing DB or work :)
$ ps aux | grep postgres
pat 456 0.0 0.0 2503812 828 ?? Ss Sun10AM 0:11.59 postgres: stats collector process
pat 455 0.0 0.0 2649692 2536 ?? Ss Sun10AM 0:05.00 postgres: autovacuum launcher process
pat 454 0.0 0.0 2640476 304 ?? Ss Sun10AM 0:00.74 postgres: wal writer process
pat 453 0.0 0.0 2640476 336 ?? Ss Sun10AM 0:00.76 postgres: writer process
@joepie91
joepie91 / delay-promise.js
Last active March 25, 2025 13:10
ES6 Promise.delay
module.exports = function(duration) {
return function(){
return new Promise(function(resolve, reject){
setTimeout(function(){
resolve();
}, duration)
});
};
};
@VasekPurchart
VasekPurchart / .gitattributes
Last active April 12, 2019 06:24
composer.lock - disable auto-merging (http://git-scm.com/docs/gitattributes#_performing_a_three_way_merge) #composer #lock #git #merge
/composer.lock -merge
@fprochazka
fprochazka / README.md
Last active November 23, 2018 17:57 — forked from StefanWallin/README.md
Configuring HTTPS + SPDY
@fprochazka
fprochazka / .1 readme.md
Last active October 27, 2018 16:15
.git/hooks/post-checkout

post checkout hook na mazání cache

  • post-checkout.sh uložit jako .git/hooks/post-checkout
  • .invalidate-opcache.php jako www/.invalidate-opcache.php (POZOR! - tenhle soubor buďto na produkci nenahrávat, nebo zablokovat přístup!)