/libraries-js

Useful libraries and links

JavaScript

Programming

ramda - Functional programming library for JS.
partial.lenses - high-performance optics library.
fp-ts - Functional programming in TypeScript.
monocle-ts - Functional TypeScript optics.

Data analysis

discovery.js - Analyse json to visible and readable output.

Animations

barba.js - transitions between your website's pages.
anime - js animations engine.
mojs - motion graphics toolbelt.

State managment

mobx - state management on observables.

Realtime types

typed-contracts - validation with good Flow and TypeScript type inference.
mobx-state-tree - realtime types for mobx.

React hooks

react-spring - spring-physics based animation library.
react-query - fetching, caching and updating asynchronous data.
swr - library for remote data fetching.

2D rendering

fabric.js - easy to work with HTML5 canvas element.
matter-js - 2D rigid body physics engine.
2D physics engine tutorial - 2D physics engine from scratch in Javascript.

Sound

wavetable oscillator - wavetable oscillator tutorial.
wavetable synthesis - wavetable synthesis algorithm description.
web-midi - interact with MIDI instruments directly from a web browser.
AudioWorklet examples - Code examples and resources for AudioWorklet.
Web Audio effects - Custom Web audio effects examples.

Algoritms

ngraph.path - Path finding in a graph.

Game engines

pixi.js - The HTML5 Creation Engine most flexible 2D WebGL renderer.
phaser - 2D game framework for making HTML5 games.

Testing

fast-check - Property based testing framework for JavaScript/TypeScript.
jsverify - Property-based checking. Like Quickcheck in haskell.

Dev tools

husky - husky can prevent bad git commit, git push and more by Git hooks.
lerna - A tool for managing JavaScript projects with multiple packages.
bundlesize - tool for bundle size autocheck.

Other

clooney - simple webworkers.

UI

React UI

arui-feather - alfa bank ui kit (RU).

Interesting experements

node-fibers[NODEONLY] - a powerful tool which expose an API to jump between multiple call stacks from within a single thread.
$mol_fiber - Pausable synchronous executions. Frees main thread every 8ms and continues fiber in next animation frame.

Useful links

frontend-dev-bookmarks - collection of resources for frontend.

CSS

pure-css - A set of small, responsive CSS modules that you can use in every web project.