Showing posts with label JavaScript. Show all posts
Showing posts with label JavaScript. Show all posts

Wednesday, November 28, 2018

microstates.js

Composable State Primitives for JavaScript

Monday, October 16, 2017

Checking if we're running with a user gesture

function isUserInteraction() {
  const detectionElement = window.document.createElement('audio');
  detectionElement.play();
  return !detectionElement.paused;
}

Friday, July 29, 2016

flow-remove-types

Turn your JavaScript with Flow type annotations into standard JavaScript in an instant with no configuration and minimal setup.

Thursday, January 7, 2016

Sickle

Sickle processes TypeScript and adds Closure Compiler -compatible JSDoc annotations. This allows using TypeScript to transpile your sources, and then Closure Compiler to bundle and optimize them, while taking advantage of type information in Closure Compiler.

Wednesday, November 25, 2015

source-map-explorer

The source map explorer determines which file each byte in your minified JS came from. It shows you a treemap visualization to help you debug where all the code is coming from.

Tuesday, October 20, 2015

DataLoader

DataLoader is a generic utility to be used as part of your application's data fetching layer to provide a consistent API over various key-value store backends and reduce requests to those back-ends via batching and caching.

Friday, July 24, 2015

Six Speed

Performance of ES6 features (as implemented natively and via transpilers) relative to the ES5 baseline operations per second.

Wednesday, July 22, 2015

v8-perf

Notes and resources related to v8 and thus Node.js performance.

Monday, May 18, 2015

jscodeshift

jscodeshift is a toolkit for running codemods over multiple JS files.

See also js-codemod, which contains a collection of codemod scripts based on jscodeshift.

Sunday, May 17, 2015

Otto

A JavaScript interpreter in Go.

Monday, May 11, 2015

lz-string

JS compression library meant to make storage of data in quota-limited localStorage more manageable.

Wednesday, February 11, 2015

paulirish/memory-stats.js

Gauge for JS heap size. See also stats.js for an FPS display.

Detecting Element Resizing

sdecima/javascript-detect-element-resize and KyleAMathews/element-resize-event both appear to use two <div> and scroll events to detect resizing without polling.

Monday, February 2, 2015

NuclearMail

NuclearMail is an experiment of writing a webmail client using React and the Flux architecture. It runs completely in the browser and uses the Gmail REST API.

Monday, December 1, 2014

Quill - A Rich Text Editor with an API

ContentEditable-based extensible rich text editor

Wednesday, November 5, 2014

widged/kinetic

Kinetic Scrolling with JavaScript

Monday, November 3, 2014

Immutable Data Collections

Immutable data cannot be changed once created, leading to much simpler application development, no defensive copying, and enabling advanced memoization techniques.


Immutable provides List, Stack, Map, OrderedMap, and Set by using persistent hash maps tries and vector tries as popularized by Clojure and Scala. They achieve efficiency on modern JavaScript VMs by using structural sharing and minimizing the need to copy or cache data.


Immutable also provides a lazy Seq, allowing efficient chaining of collection methods like map and filter without creating intermediate representations. Create some Seq with Range and Repeat.

Monday, June 2, 2014

scribe/BROWSERINCONSISTENCIES.md

contentEditable browser inconsistencies that The Guardian ran into while developing their Scribe library.

Wednesday, April 16, 2014

Lesser-Known JavaScript Debugging Techniques

debug(), monitor(), monitorEvents() and a Chrome extension to extend these to native methods and custom events.