awesome-wpo

Web Performance Optimization resource hub

A curated collection of resources and tools for optimizing website performance.

pencil A curated list of Web Performance Optimization. Everyone can contribute here!

GitHub

8k stars
345 watching
563 forks
Language: JavaScript
last commit: over 2 years ago
Linked from 9 awesome lists

awesomeawesome-listlistwebperfwebperf-metricswebperformance

Awesome WPO / Books

HTTP/2 in Action by Barry PollardBarry Pollard
Web Performance in Action by Jeremy WagnerJeremy L. Wagner
Book of SpeedStoyan Stefanov
Designing for Performance: Weighing Aesthetics and SpeedLara Callender Hogan
Even Faster Web Sites: Performance Best Practices for Web DevelopersSteve Souders
High Performance Browser Networking: What every web developer should know about networking and web performanceIlya Grigorik
High Performance JavaScriptNicholas C. Zakas
High Performance Web Sites: Essential Knowledge for frontend EngineersSteve Souders
High Performance Responsive Design: Building Faster Sites Across Devices– Tom Barker
Lean sites– Barbara Bermes
Time Is Money: The Business Value of Web Performance– Tammy Everts
Using WebPagetestRick Viscomi, Andy Davies, Marcel Duran
Web Page Size, Speed, and PerformanceTerrence Dorsey
Web Performance Daybook Volume 2Stoyan Stefanov
Web Performance TuningPatrick Killelea
You Don't Know JS: Async & PerformanceKyle Simpson
Linux, Apache, MySQL, PHP Performance end-to-endColin McKinnon
Web Components in ActionBen Farrell
Image OptimizationAddy Osmani

Awesome WPO / Case studies

WPOStatsCase studies and experiments demonstrating the impact of web performance optimization (WPO) on user experience and business metrics
Google Developers Case StudiesLearn why and how other developers have used the web to create amazing web experiences for their users

Awesome WPO / Documentation

Browser DietA collaborative guide about frontend performance
PageSpeed Insights RulesA guide created by PageSpeed Team. Deprecated. This is deprecated and will be shut down in May 2019. Version 5 is the latest and provides both real-world data from the Chrome User Experience Report and lab data from Lighthouse
Best Practices for Speeding Up Your siteThe list includes 35 best practices divided into 7 categories, created by Yahoo! Exceptional Performance team

Awesome WPO / Events / Conferences

We Love Speed– We Love Speed ​​was born from the desire to share knowledge and experiences in web performance as widely as possible
PWA Summit– A free, online, single-track conference focused on helping everyone succeed with Progressive Web Apps
Velocity– At Velocity, web operations, performance, and DevOps professionals learn to build fast, resilient, and highly available sites and apps
performance.now()– The performance.now() conference will return to Amsterdam! We're a single-track conference with fourteen world-class speakers, covering today’s most important web performance insights
#PerfMatters– #PerfMatters Conference is the ONLINE web performance conference by internationally renowned performance developers

Tools / Analyzers

Web.devGet the web's modern capabilities on your own sites and apps with useful guidance and analysis from web.dev
Confess872about 10 years agoUses PhantomJS to headlessly analyze web pages and generate manifests
DebugBearDebugBear is a site monitoring tool based on Lighthouse. See how your scores and metrics changed over time, with a focus on understanding what caused each change. DebugBear is a paid product with a free 30-day trial
Page SpeedThe PageSpeed family of tools is designed to help you optimize the performance of your site. PageSpeed Insights products will help you identify performance best practices that can be applied to your site, and PageSpeed optimization tools can help you automate the process
Lighthouse28,510almost 2 years agoAuditing and performance metrics tool for Progressive Web Applications
ScrepyAI-Based SEO Analysis & Monitoring Tool
YSlow2,205over 3 years agoYSlow analyzes web pages and suggests ways to improve their performance based on a set of rules for high-performance web pages
YSlow for PhantomJSYSlow for PhantomJS also introduces new output formats for automated test frameworks: TAP (Test Anything Protocol) and JUnit
Grunt-WebPageTest35almost 8 years agoGrunt plugin for continuous measurement of WebPageTest. ( )
Grunt-yslow91over 9 years agoGrunt task for testing page performance using PhantomJS, a headless WebKit browser
Grunt-perfbudget856over 2 years agoA Grunt.js task for enforcing a performance budget ( )
Web Tracing Framework2,642almost 7 years agoWeb Tracing Framework is a set of libraries, tools, and visualizers for the tracing and investigation of complex web applications
Yandex.Tank2,465almost 2 years agoAn extensible open-source load testing tool for advanced Linux users which is especially good as a part of an automated load testing suite
Yellow Lab ToolsOnline quick and easy tool that audits frontend bad practices, reveals performance issues, and profiles JavaScript
PagelocityA web performance optimization and analysis tool
VarvyTest your site to see if it follows the Google guidelines for speed
Web Bloat Score CalculatorCompare size of a page to a compressed image of the same page
Speed Racer1,866about 4 years agoCollect performance metrics for your library/application using Chrome headless
SpeedrankSpeedrank monitors the performance of your site in the background. It displays Lighthouse reports over time and delivers recommendations for improvement. Speedrank is a paid product with 14-day-trial
Lightest AppWebpage load time is extremely important for conversion and revenue. Visualize web performance against competitors

Tools / Analyzers - API

Node-yslowjs9over 10 years agoYSlow.js on Node.js is a simple Node.js wrapper for programmatically running phantomjs yslow.js
PSI3,104over 5 years agoPageSpeed Insights for Node.js - with reporting

Application Performance Monitoring

Datadog APMEnd-to-end distributed tracing and APM at scale, correlated to all telemetry
BetterUptimeA good website monitoring tool (bundling status page, incident notification)
PingdomA tool to get the uptime of your website (with probes from different locations)
UptimeRobotAnother uptime monitoring tool (with a generous free plan)
RoboMiriRoboMiri is a stable Uptime Monitor that offers a wide range of monitors: cronjob, keyword, website, port, ping. 25 uptime checks with 3 minutes interval checks for free. Alerts via Phone Call, SMS, Email, and WebHook
StatusListUptime, performance monitoring with debug details, and hosted status page in one simple dashboard

Application Performance Monitoring / Bundle Analyzer

Bundlesize4,475almost 2 years agoKeep your bundle size in check
source-map-explorer3,842over 3 years agoAnalyze and debug bundle space usage through source maps
BundlephobiaHelps you find the performance impact of adding an npm package to your frontend bundle
Webpack bundle analyzer12,602almost 2 years agowebpack plugin and CLI utility that represents bundle content as a convenient interactive zoomable treemap
DiscVisualise the module tree of browserify project bundles and track down bloat
Lasso-analyzer4over 5 years agoanalyze and Visualise project bundles created by Lasso
Packtracker.ioCheck your webpack bundle stats on every pull request, and track them over time
Compression webpack plugin1,413almost 2 years agoPrepare compressed versions of assets to serve them with Content-Encoding
BundleStats573almost 2 years agoGenerate bundle report(bundle size, assets, modules, packages) and compare the results between different builds

Application Performance Monitoring / Benchmark - CSS

CSS-perf573over 9 years agoCompletely unscientific way of testing CSS performance. Most of these tests will revolve around methodologies and techniques for determining effective CSS architecture. Put another way, I want to know what works best given a particular comparison of CSS strategies

Application Performance Monitoring / Benchmark - JavaScript

JSPerfjsPerf aims to provide an easy way to create and share test cases, comparing the performance of different JavaScript snippets by running benchmarks
Benchmark.jsA robust benchmarking library that works on nearly all JavaScript platforms, supports high-resolution timers, and returns statistically significant results
JSlitmus166about 16 years agoJSLitmus is a lightweight tool for creating ad-hoc JavaScript benchmark tests
Matcha563about 6 years agoMatcha allows you to design experiments that will measure the performance of your code. It is recommended that each bench focus on a specific point of impact in your application
Timing.js1,496over 6 years agoTiming.js is a small set of helpers for working with the Navigation Timing API to identify where your application is spending its time. Useful as a standalone script, DevTools Snippet, or bookmarklet
Stats.js8,773almost 2 years agoThis class provides a simple info box that will help you monitor your code performance
PerfTests1over 11 years agoPerformance tests of JavaScript inheritance models
Memory-stats.js2,095about 11 years agominimal monitor for JS Heap Size via performance memory

Application Performance Monitoring / Benchmark - PHP

PHPench53almost 7 years agoPHPench creates a graphical output for a PHP benchmark. Plot the runtime of any function in realtime with GnuPlot and create an image out of the result
php-bench13over 11 years agoBenchmark and profile PHP code blocks whilst measuring the performance footprint

Application Performance Monitoring / Bookmarklets

Yahoo YSlow for Mobile/BookmarkletYSlow analyzes web pages and suggests ways to improve their performance based on a set of rules for high-performance web pages
PerfMap3,789over 9 years agoA bookmarklet to create a frontend performance heatmap of resources loaded in the browser using the Resource Timing API
DOM Monster559over 4 years agoA cross-platform, cross-browser bookmarklet that will analyze the DOM & other features of the page you're on, and give you its bill of health
CSS StressCSS Stress is a Testing and Performance Profiling
Performance-Bookmarklet1,143over 3 years agoAnalyze the current page through the Resource Timing API, Navigation Timing API and User-Timing - Sort of a light live WebPageTest. As and under the name Performance-Analyser

Application Performance Monitoring / CDN

Cloudflare CDNA content delivery network that uses next-gen tech to deliver fast, reliable, CDN services
PageCDNA state-of-the-art opensource CDN with aggressive content optimization using brotli-11 compression, HTTP/2 server push, better HTTP/2 multiplexing, and more. Supports 100s of libraries and 2000+ WordPress themes already. Easy to use, easy to link, and very fast
jsDelivr5,691over 2 years agoSimilar to Google Hosted Libraries, jsDelivr is an open-source CDN that allows developers to host their own projects and anyone to link to our hosted files on their sites
Google Hosted LibrariesGoogle Hosted Libraries is a content distribution network for the most popular, open-source JavaScript libraries
CDNjsAn open-source CDN for JavaScript and CSS sponsored by CloudFlare that hosts everything from jQuery and Modernizr to Bootstrap
Amazon CloudFrontA content delivery network by Amazon that integrates nicely with other Amazon services or can be used standalone
jQueryjQuery CDN – Latest Stable Versions, powered by MaxCDN
UpYun CDNCDN provided by upyun
Bootstrap 中文网开放 CDN 服务Bootstrap Chinese net open CDN service (only HTTP)
Yandex CDNYandex Content Delivery Network hosts popular third-party JavaScript and CSS libraries (best for use in Russia)

Application Performance Monitoring / CDN - Monitor

CDNperffinds you fast and reliable JavaScript CDNs that make your sites snappy and happy

Application Performance Monitoring / CDN - Utilities

Gulp-google-cdn82over 5 years agoReplaces script references with Google CDN ones

Application Performance Monitoring / Extensions

Browser Calories131over 10 years agoThe easiest way to measure your performance budget

Application Performance Monitoring / Generators

AtBuild35almost 6 years agoJavaScript code generation tool that lets you write JavaScript that outputs JavaScript. Good for unrolling loops and writing libraries that compile away the runtime
Glue2,550almost 4 years agoGlue is a simple command-line tool to generate sprites:
Pitomba-spriter19almost 12 years agoSpriter is a simple and flexible dynamic sprite generator for CSS, using Python. It can process CSS both synchronous and asynchronous as it provides classes to be used in your Python code and also a watcher that listens to your filesystem and changes CSS and sprite as soon as a static is changed
Grunt-spritesmith1,134over 4 years agoGrunt task for converting a set of images into a sprite sheet and corresponding CSS variables
Grunt-sprite-css-replaceGrunt task that generates a sprite from images referenced in a style sheet and then updates the references with the new sprite image and positions
Grunt-svg-spriteSVG sprites & stacks galore — Grunt plugin wrapping around svg-sprite that reads in a bunch of SVG files, optimizes them and creates SVG sprites and CSS resources in various flavors
Gulp-sprite15almost 11 years agogulp task for creating an image sprite and the corresponding style sheets for Gulp
Gulp-svg-sprites334about 5 years agogulp task for creating SVG sprites
SvgToCSS2over 10 years agoOptimizes and renders SVG files in CSS / Sass sprites
Assetgraph-sprite36almost 2 years agoAssetgraph transform for auto-generating sprites based on the CSS dependency graph
Sprite CowSprite Cow helps you get the background-position, width, and height of sprites within a spritesheet as a nice bit of copyable CSS
ZeroSpritesZeroSprites is a CSS sprites generator aimed at area minimization using algorithms used in the field of VLSI floorplanning
CSS Sprite GeneratorCSS sprites allow you to combine multiple images into a single file
Sprity481over 4 years agoA modular image sprite generator with a lot of features: supports retina sprites, supports different output formats, generates sprites and proper style files out of a directory of images, etc
Sprite Factory621over 2 years agoThe sprite factory is a ruby library that can be used to generate CSS sprites. It combines individual image files from a directory into a single unified sprite image and creates an appropriate CSS style sheet for use in your web application

Application Performance Monitoring / Image Optimizers

ShortpixelCompress Your Image by removing unnecessary bytes of the image and Convert it into WebP/AVIF
Grunt-smushit83over 10 years agoGrunt plugin to remove unnecessary bytes of PNG and JPG using Yahoo Smushit
Gulp-smushit33over 8 years agoGulp plugin to optimize PNG and JPG using Yahoo Smushit. Made on top of smosh
Smush itSmush it uses optimization techniques specific to image format to remove unnecessary bytes from image files. It is a "lossless" tool, which means it optimizes the images without changing their look or visual quality
Imagemin5,591about 2 years agoMinify images seamlessly with Node.js
Sharp29,459almost 2 years agoThe typical use case for this high-speed Node.js module is to convert large images of many formats to smaller, web-friendly JPEG, PNG, and WebP images of varying dimensions
Gm6,964almost 3 years agoGraphicsMagick and ImageMagick for Node.js
Exexif12,720almost 2 years agoPure elixir library to extract tiff and exif metadata from JPEG files
ExifCleanerGUI app to remove EXIF metadata from images and video files with drag and drop. Free and open source
OptiPNGOptiPNG is a PNG optimizer that recompresses image files to a smaller size, without losing any information
Grunt-contrib-imagemin1,214about 2 years agoMinify PNG and JPEG images for Grunt
Gulp-imagemin1,906over 2 years agoMinify PNG, JPEG, GIF and SVG images with imagemin for Gulp
Grunt-WebP118over 10 years agoConvert your images to WebP format
Gulp-WebP220almost 3 years agoConvert images to WebP for Gulp
ImageoptimFree app that makes images take up less disk space and load faster, without sacrificing quality. It optimizes compression parameters, and removes junk metadata and unnecessary color profiles
Grunt-imageoptim479about 7 years agoMake ImageOptim, ImageAlpha, and JPEGmini part of your automated build process
ImageOptim-CLI3,460about 2 years agoAutomates ImageOptim, ImageAlpha, and JPEGmini for Mac to make batch optimization of images part of your automated build process
Tapnesh-CLI21about 6 years agoTapnesh is a CLI tool that will optimize all your images in parallel easily and efficiently!
TinypngAdvanced lossy compression for PNG images that preserves full alpha transparency
Kraken Web-interfaceOptimize your images and will be available for download for 12 hours
CompressorOnline image compressor for JPG, PNG, SVG and GIF
ShrinkrayOne-click optimization for images in your GitHub repos
mozjpeg5,484about 2 years agoImproved JPEG encoder
Jpegoptim1,600almost 2 years agoUtility to optimize/compress JPEG files
ZopfliPNG3,440about 2 years agoA command-line program to optimize PNG images
AdvPNGRecompress PNG files to get the smallest possible size
Leanify833over 2 years agoLightweight lossless file minifier/optimizer
TrimageA cross-platform tool for losslessly optimizing PNG and JPG files
ImageEngineCloud service for optimizing, resizing and caching images on the fly with great mobile support
ImageKit.ioIntelligent real-time image optimizations, image transformations with a global delivery network and storage
Optimizt944almost 3 years agoCLI image optimization tool. It can compress PNG, JPEG, GIF and SVG lossy and lossless and create WebP versions for raster images

Application Performance Monitoring / Lazyloaders

lazyload938over 5 years agoLazyload images, iframes, widgets with a standalone JavaScript lazyloader ~1kb
lozad.js7,461over 2 years agoHighly performant, light ~0.9kb, and configurable lazy loader in pure JS with no dependencies for responsive images, iframes, and more

Application Performance Monitoring / Loaders

HeadJS4,157over 3 years agoThe only script in your HEAD. for Responsive Design, Feature Detections, and Resource Loading
RequireJSRequireJS is a JavaScript file and module loader. It is optimized for in-browser use, but it can be used in other JavaScript environments, like Rhino and Node.js
Labjsis an open-source (MIT license) project supported by Getify Solutions. The core purpose of LABjs is to be an all-purpose, on-demand JavaScript loader, capable of loading any JavaScript resource, from any location, into any page, at any time
Defer.js69over 13 years agoAsync Everything: Make the meat of your pages load faster with this JS morsel
InstantClick5,512over 8 years agoInstantClick makes the following links in your site instant
JIT509over 8 years agoA JIT (Just In Time) plugin loader for Grunt. The load time of Grunt does not slow down even if there are many plugins

Application Performance Monitoring / Metrics Monitor

Phantomas2,257almost 2 years agoPhantomJS-based web performance metrics collector and monitoring tool
Showslowopen source tool that helps monitor various site performance metrics over time. It captures the results of YSlow, Page Speed Insights, WebPageTest and dynaTrace Ajax Edition
Bench25about 11 years agoUsing Phantomas (a PhantomJS-backed client performance metrics scrapper). Benchmark a page, store results in MongoDB, and display results via the built-in server
Keepfast104over 8 years agoTool to monitor indicators related to the performance of a web page
GTmetrixGTmetrix uses Google Page Speed and Yahoo! YSlow to grade your site's performance and provides actionable recommendations to fix these issues
Pingbreak.comFree site and SSL Monitoring with response time alerting (on Slack, Twitter, Mattermost, Discord or custom Webhook)
Pingdom site Speed TestTest the load time of that page, analyze it, and find bottlenecks
Dotcom-toolsanalyze your website's speed in real browsers from 20 locations worldwide
WebPageTestRun a free site speed test from multiple locations around the globe using real browsers (IE and Chrome) and at real consumer connection speeds. You can run simple tests or perform advanced testing including multi-step transactions, video capture, content blocking and much more. Your results will provide rich diagnostic information including resource-loading waterfall charts, Page Speed optimization checks and suggestions for improvements
Sitespeed.ioSitespeed.io is an open-source tool that will check your site against web performance best practice rules and use the Navigation Timing API to collect metrics. It will create XML & HTML output of the result
Grunt-phantomas284over 9 years agoGrunt plugin wrapping phantomas to measure frontend performance
PerfjankieRuntime Browser Performance regression suite ( )
BrowserView MonitoringContinually checks web page load times in Internet Explorer, Chrome and Firefox from multiple points around the world
New Relic Browser MonitoringMonitor your browser-side applications in real time, with a focus on real end users’ experiences
DareBoostReal Browser Monitoring. Offers complete reports about web performance and quality using YSlow, Page Speed and numerous custom tips
Bytes Matter Real User MonitoringFull featured Real User Monitoring solution. Free tier for smaller sites. Includes monitoring for Google's Core Web Vitals

Application Performance Monitoring / Metrics Monitor - API

WebPageTest API Wrapper for Node.js1,640almost 2 years agoWebPageTest API Wrapper is an npm package that wraps WebPageTest API for Node.js as a module and a command-line tool

Application Performance Monitoring / Metrics Monitor - EMAIL

WebPerformance ReportWeb performance report every week in your inbox. Get a Personalized Report on the Status of the E-commerce or Website that you want to monitor in terms of Web performance and Web optimization, Core Web Vitals are included

Application Performance Monitoring / Minifiers - HTML

HTMLCompressorHtmlCompressor is a small, fast, and very easy to use Java library that minifies given HTML or XML source by removing extra whitespaces, comments, and other unneeded characters without breaking the content structure. As a result page become smaller in size and load faster. A command-line version of the compressor is also available
Django-htmlmin542over 3 years agodjango-html in an HTML minifier for Python with full support for HTML 5. It supports Django, Flask and any other Python web framework. It also provides a command-line tool that can be used for static sites or deployment scripts
HTMLMinifier4,956over 2 years agoHTMLMinifier is a highly configurable, well-tested, Javascript-based HTML minifier, with lint-like capabilities
Grunt-contrib-htmlmin424about 2 years agoA grunt plugin to minify HTML that uses HTMLMinifier
Gulp-htmlmin726almost 7 years agoA gulp plugin to minify HTML that uses HTMLMinifier
Grunt-htmlcompressor35over 2 years agoGrunt plugin for HTML compression, using htmlcompressor
HTML_minifier12over 10 years agoRuby wrapper for kangax html-minifier
HTML_press35over 10 years agoRuby gem for compressing html, that removes all whitespace junk, and leaves only HTML
Koa HTML Minifier31over 3 years agoMiddleware that minifies your HTML responses using html-minifier. It uses html-minifier's default options which are all turned off by default, so you have to set the options otherwise it's not going to do anything
HTML Minifier OnlineA HTML min tool by kangax (HTMLMinifier Creator)
Minimize162over 6 years agoMinimize is an HTML minifier based on the node-htmlparser,currently, HTML minifier is only usable server-side. Client-side minification will be added in a future release
Html-minifier133about 2 years agoA simple Windows command-line tool to minify your HTML, Razor views & Web Forms views

Application Performance Monitoring / Minifiers - JS & CSS

YUI Compressor3,015about 5 years agoJavaScript compressor which, in addition to removing comments and white-spaces, obfuscates local variables using the smallest possible variable name. This obfuscation is safe, even when using constructs such as 'eval' or 'with' (although the compression is not optimal is those cases) Compared to jsmin, the average savings is around 20%
UglifyJS213,199almost 2 years agoUglifyJS is a JavaScript parser, minifier, compressor or beautifier toolkit, written in JavaScript
CSSO3,766over 2 years agoCSS minimizer unlike others. In addition to usual minification techniques, it can perform structural optimization of CSS files, resulting in smaller file size compared to other minifiers
CSSmin.js76about 15 years agocssmin.js is a JavaScript port of YUICompressor's CSS minifier
Grunt-contrib-concat812about 2 years agoA Grunt plugin to concatenate files
Grunt-contrib-uglify1,481about 2 years agoA Grunt plugin to concatenate and minify JavaScript files
Clean-css4,174almost 2 years agoA fast, efficient, and well-tested CSS minifier for node.js
Django-compressor2,809almost 2 years agoCompresses linked and inline JavaScript or CSS into a single cached file
Django-pipeline1,520almost 2 years agoPipeline is an asset packaging library for Django, providing both CSS and JavaScript concatenation and compression, built-in JavaScript template support, and optional data-URI image and font embedding
JShrink751over 2 years agoJShrink is a PHP class that minifies JavaScript so that it can be delivered to the client quicker
JSCompressThe most minimalistic online JS Compress tool
CSSshrink1,052about 9 years agoBecause CSS is ospon the critical path to rendering pages. It must be small! Or else!
Grunt-cssshrink28over 10 years agoThis is just a grunt wrapper for CSS Shrink
Gulp-cssshrink22over 10 years agoShrinks CSS files using cssshrink for Gulp
Prettyugly6over 12 years agoUglify (strip spaces) or prettify (add consistent spaces) CSS code
Grunt-contrib-cssmin794about 2 years agoCSS Minifier for Grunt
Grunt-uncss3,824about 3 years agoA grunt task for removing unused CSS from your projects
Gulp-uncss938about 9 years agoA gulp task for removing unused CSS from your projects

Application Performance Monitoring / Miscellaneous

Socialite.jsSocialite provides a very easy way to implement and activate a plethora of social sharing buttons — any time you wish. On document load, on article hover, on any event
uCSS1,620over 9 years agouCSS is made for crawling (large) sites to find unused CSS selectors, but not remove unused CSS
HTTPinvoke343over 10 years agoA no-dependencies HTTP client library for browsers and Node.js with a promise-based or Node.js-style callback-based API to progress events, text, and binary file upload and download, partial response body, request and response headers, status code
Critical10,043about 2 years agoExtract & Inline Critical-path CSS in HTML pages (alpha)
Csscolormin12over 7 years agoUtility that minifies CSS colors, example: min("white"); // minifies to "#fff"
Lazysizes17,572over 2 years agoHigh-performance lazy loader for images (responsive and normal), iframes, and scripts, that detects any visibility changes triggered through user interaction, CSS or JavaScript without configuration
Perf-ToolingPerf Tooling is a shared resource to keep track of new and existing performance tools
TMI1,632over 9 years agoTMI (Too Many Images) - discover your image weight on the web

Application Performance Monitoring / SVG

SVGO21,114almost 2 years agoSVGO is a Nodejs-based tool for optimizing SVG vector graphics files
SVG OMGSVGOMG is SVGO's Missing GUI, aiming to expose the majority, if not all the configuration options of SVGO
Grunt-svgmin433about 3 years agoMinify SVG using SVGO for Grunt
Gulp-svgminMinify SVG with SVGO for Gulp
ScourScour is an open-source Python script that aggressively cleans SVG files, removing a lot of 'cruft' that certain tools or authors embed into their documents
SVG Cleaner1,632almost 5 years agoSVG Cleaner could help you to clean up your SVG files from unnecessary data. It has a lot of options for cleanup and optimization, works in batch mode, and provides threaded processing on multicore processors

Application Performance Monitoring / Web Components

Polymer Bundler430almost 2 years agoPolymer-bundler is a library for packaging project assets for production to minimize network round-trips
Gulp-vulcanize100over 5 years agoConcatenate a set of Web Components into one file that use Vulcanize

Application Performance Monitoring / Web server Benchmarks

HTTPerf992over 4 years agohttperf is a tool for measuring web server performance. It provides a flexible facility for generating various HTTP workloads and for measuring server performance
Apache JMeterOpen source load testing tool: It is a Java platform application
LocustAn open-source load testing tool. Define user behaviour with Python code, and swarm your system with millions of simultaneous users
Autoperf179almost 12 years agoAutoperf is a ruby driver for httperf, designed to help you automate load and performance testing of any web application - for a single endpoint, or through log replay
HTTPerf.rb13over 5 years agoSimple Ruby interface for httperf, written in Ruby
PHP-httperf5over 12 years agoPHP Port of HTTPerf.rb
HTTPerf.js25over 12 years agoJS Port of HTTPerf.rb
HTTPerf.py11almost 12 years agoPython Port of HTTPerf.rb
Gohttperf4about 11 years agoGo Port of HTTPerf.rb
wrk38,170over 2 years agoA HTTP benchmarking tool (with optional Lua scripting for request generation, response processing, and custom reporting)
beeswithmachineguns6,451over 2 years agoA utility for arming (creating) many bees (micro EC2 instances) to attack (load test) targets (web applications)
k6An open-source load testing tool built for developers. Easy to integrate into CI pipelines. Tests are written in ES6 JS and you can test APIs, microservices and sites using HTTP/1.1, HTTP/2 and WebSocket

Application Performance Monitoring / Web server Modules

PageSpeed ModulePageSpeed speeds up your site and reduces page load time. This open-source web server module automatically applies web performance best practices to pages and associated assets (CSS, JavaScript, images) without requiring that you modify your existing content or workflow. PageSpeed is available as a module for Apache 2.x and Nginx 1.x
WebP-detect244almost 8 years agoWebP with Accept negotiation

Specs

Web Performance Working GroupThe mission of the Web Performance Working Group, part of the Rich Web Client Activity, is to provide methods to measure aspects of application performance of user agent features and APIs
Page VisibilityThis specification defines a means for site developers to programmatically determine the current visibility state of the page in order to develop power and CPU-efficient web applications
Navigation TimingThis specification defines a unified interface to store and retrieve high resolution performance metric data related to the navigation of a document
Resource TimingThis specification defines an interface for web applications to access the complete timing information for resources in a document
User TimingThis specification defines an interface to help web developers measure the performance of their applications by giving them access to high-precision timestamps
Performance TimelineThis specification defines a unified interface to store and retrieve performance metric data. This specification does not cover individual performance metric interfaces
CSS will-changeThis specification defines the CSS property which allows an author to declare ahead-of-time what properties are likely to change in the future, so the UA can set up the appropriate optimizations some time before they’re needed. This way, when the actual change happens, the page updates in a snappy manner
Resource HintsThis specification defines the dns-prefetch, preconnect, prefetch, and prerender relationships of the HTML Link Element (<link>). These primitives enable the developer, and the server generating or delivering the resources, to assist the user agent in the decision process of which origins it should connect to, and which resources it should fetch and preprocess to improve page performance

Stats

HTTP ArchiveIt's a permanent repository of web performance information such as size of pages, failed requests, and technologies utilized. This performance information allows us to see trends in how the Web is built and provides a common data set from which to conduct web performance research

Other Awesome Lists

iamakulov/awesome-webpack-perf957about 5 years agoA curated list of webpack tools for web performance
bayandin/awesome-awesomeness32,173over 2 years ago
sindresorhus/awesome337,709almost 2 years ago
imteekay/web-performance-research809almost 2 years agoResearch in Web Performance

Backlinks from these awesome lists:

More related projects: