Performance - AutoSponge/dev-notes GitHub Wiki
- javascript loading priorities
- blake3 hasing in node and browser with webassembly
- perfume user-centered front-end metrics app analytics
- web vitals extension
- simdjson fastest json parser
- perflink js benchmarks
- V small, fast, C-speed language (similar to Go)
- monitoring performance with the pagespeed insights api
- increase parallel workers in node
- preloadable workers
- quicklink prefetch in idle time
- progressive tooling
- serviceworker recipies
- imaging-heap cli tool to check responsive image markup
- buffer-reuse-pool
- speedscope flamegraph for various formats
- testmysite benchmarked mobile speed score from Google
- wedgetail time functions in node tests
- nectar js JS cross-platform compiler
- img.decoding
- critical Extract & Inline Critical-path CSS in HTML pages
- lightcrawler crawl site running lighthouse
- perf.rocks articles and tools
- benny simple benchmarking framework
- front-end perf roundup front-end performance article roundup from smashing mag
- crypto-hash async hashing in node
- the tool CLI tool captures cpu, memory profiles for node
- assemblyscript Typescript => WASM
- native img lazyload
- uuid
- puppeteer-performance
- rendering on the web - strategies for rendering and their pro/cons
- afterFrame run a function after browser renders raf
- catapult
- worker-dom DOM api in a web-worker
- razzle SSR and hot module replacement (multi-framework)
- perfume measure First (Contentful) Paint, Time to Interactive and First Input Delay
- idlize idle until urgent pattern
- idle-until-urgent
- garie OSS web performance monitoring
- v8 tooling benchmark
- progressive tooling collection of tools
- workerDOM move DOM manipulation to a web worker.
- turbo-net high speed TCP for node
- leakage memory leak tester for node
- dbmonster benchmark compares front-end frameworks
Testing tools
Transpiler optimizations
- faster.js babel optimizations
Caching
Preload, prefetch
- priorities
- link uses
- lazy techniques
- yall yet another lazy loader
- lozad lazy images with IntersectionObserver
- lazysizes SEO-friendly lazy load images
- progressive-image no deps, retina support
- fetch-inject
Perceived Performance
- turbolinks
- see history issue which relates to RAM useage
- jquery-pjax
- nanoscheduler schedule tasks for idle time
CSS Inlining
V8 optimizations
- fast properties
- v8 parsing presentation
Images
- image filters
- JPNG.svg compress JPGs with SVG
- svgomg optimize svgs
- sharp image processing
- website speed test img analysis
- squip svg img placeholder
- lazyload
Streaming JSON
- oboe.js (built using clarinet)
- nano-json-stream-parser
- jsonparser
Examples
- native alternatives
- frameworks-bench benchmark frameworks with wrk
- socket perf benchmarks
- 1m socket connections
- unordered array remove
- newline json streaming
- PRPL pattern for pwas
Multi-threading
- crypto-async
- napajs Microsoft multithreaded js runtime
- node worker nodes
- comlink-loader load modules to a worker
benchmarker
Guides
- the cost of js
- optimize for google pagespeed
- FE checklist
- profile node.js
- cluster express
- multithread (child process)
Servers
Garbage Collection
Script/css injection
Service Worker
- service mocker mock services inside service worker
- swivel pass messages between page and service worker
- dynamic service worker pwa helper
- twilio offline
- pinterest/service worker toolbox
- guide to sw
Benchmarks/Comparisons
Tools
- blocked-at trace long-running synch operations
- pprof visualizing perf data
- wrk http testing tool
- hyperid
- speedracer
- server-timing middleware
- seige request benchmarking
- autocannon request benchmarking
- zipkin distributed tracing system
- fast-memoize
- optimize-js
- nodejs dashboard telemetry graphs in terminal
- artillery.io
- step
- nightmare-har collect har files using nightmare/electron
- pwmetrics
- marky high resolution timer with labels
- progressive jpegs and this
- nanobench TAP-like output
- appmetrics collect timing info and send to google analytics
- os-utils perf metrics for node.js
Native interface
- fastcall call C fns
Memory
- flat-js flat memory lib for js