{"id":16182262,"url":"https://github.com/avraammavridis/performance-budget-plugin","last_synced_at":"2025-03-16T10:31:43.471Z","repository":{"id":57322117,"uuid":"85219837","full_name":"AvraamMavridis/performance-budget-plugin","owner":"AvraamMavridis","description":"Perfromance budget plugin for Webpack (https://webpack.js.org/)","archived":false,"fork":false,"pushed_at":"2018-11-07T00:24:46.000Z","size":13,"stargazers_count":63,"open_issues_count":1,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-02-27T07:43:55.733Z","etag":null,"topics":["budget","gziprequests","jsperf","perfmatters","performance","performance-analysis","performance-metrics","performance-monitoring","plugin","postrequests","webpack","webperf","webperformance"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AvraamMavridis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-16T16:47:02.000Z","updated_at":"2023-04-17T18:27:32.000Z","dependencies_parsed_at":"2022-08-25T22:42:00.263Z","dependency_job_id":null,"html_url":"https://github.com/AvraamMavridis/performance-budget-plugin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AvraamMavridis%2Fperformance-budget-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AvraamMavridis%2Fperformance-budget-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AvraamMavridis%2Fperformance-budget-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AvraamMavridis%2Fperformance-budget-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AvraamMavridis","download_url":"https://codeload.github.com/AvraamMavridis/performance-budget-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243814895,"owners_count":20352036,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["budget","gziprequests","jsperf","perfmatters","performance","performance-analysis","performance-metrics","performance-monitoring","plugin","postrequests","webpack","webperf","webperformance"],"created_at":"2024-10-10T06:29:57.711Z","updated_at":"2025-03-16T10:31:43.207Z","avatar_url":"https://github.com/AvraamMavridis.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003e\u003ccode\u003eperformance-budget-plugin\u003c/code\u003e for webpack\u003c/h1\u003e\n\u003c/div\u003e\n\nMeasure the impact of your changes to the performance of your application.\nThe plugin works with the help of `webpack dev server` and gathers metrics between\nthe re-builds (every time you make some changes in your codebase). It is recommended to have\nthe hot module replacement disabled when you use this plugin.\n\n***A performance budget provides values against which design, development, content, or any aspect of a site that may affect performance, can be made.***\n\nThe aim of the plugin is to analyze the performance of the website against a performance bugdet.\n\n[![forthebadge](http://forthebadge.com/images/badges/built-with-love.svg)](http://forthebadge.com)\n\n\n## Install\n\n`npm install performance-budget-plugin [--save-dev]`\n\n## Setup\n\n```js\n// webpack.config.js\n\nvar PerformanceBudgetPlugin = require('performance-budget-plugin');\n\nmodule.exports = {\n  // ...\n\n  plugins: [\n    new PerformanceBudgetPlugin({\n      timeToFirstCss: 500, // ms, default: Infinity\n      timeToFirstJs: 1500, // ms, default: Infinity\n      jsSize: 50000, // bytes, default: Infinity\n      cssSize: 30000, // bytes, default: Infinity\n      domInteractive: 6000, // ms, default: Infinity\n      domContentLoaded: 7000, // ms, default: Infinity\n      domComplete: 8000, // ms, default: Infinity\n      metricsSummary: 'minimal' // options: [verbose, minimal, true, false], default: false,\n      numberOfRebuilds: 3 // number of rebuilds before displaying metrics, default 2\n    })\n  ]\n  // ...\n}\n\n```\n\n### Results\n\nA little while after webpack finishes the compilation you will get in your terminal impacts of your changes. e.g.\n\n\u003ca href=\"https://ibb.co/jqrRrF\"\u003e\u003cimg src=\"https://image.ibb.co/gsOHyv/Screen_Shot_2017_03_16_at_18_36_40.png\" alt=\"Screen_Shot_2017_03_16_at_18_36_40\" border=\"0\" width=\"400\"\u003e\u003c/a\u003e\u003cbr /\u003e\u003cbr /\u003e\n\n\nPassing `minimal` as value of the `metricsSummary` option will give you some more info about your application.\n\n\u003ca href=\"https://ibb.co/jVgnyv\"\u003e\u003cimg src=\"https://image.ibb.co/hvMWQa/Screen_Shot_2017_03_16_at_18_41_19.png\" alt=\"Screen_Shot_2017_03_16_at_18_41_19\" border=\"0\" width=\"300\"\u003e\u003c/a\u003e\u003cbr /\u003e\u003cbr /\u003e\n\nPassing `verbose` you will get some more in-depth info.\n\n\u003ca href=\"https://ibb.co/gNQfJv\"\u003e\u003cimg src=\"https://image.ibb.co/jCArQa/Screen_Shot_2017_03_16_at_18_45_52.png\" alt=\"Screen_Shot_2017_03_16_at_18_45_52\" border=\"0\" width=\"600\"\u003e\u003c/a\u003e\u003cbr /\u003e\u003cbr /\u003e\n\n## Options\n\nAll options are optional. Apart from the available metrics you can also pass `metricsSummary` and `numberOfRebuilds`\n\n## Available Metrics\n\nAny of the following can be passed to as param to the options object\n\n  requests,\n  gzipRequests,\n  postRequests,\n  httpsRequests,\n  notFound,\n  timeToFirstByte,\n  timeToLastByte,\n  bodySize,\n  contentLength,\n  httpTrafficCompleted,\n  ajaxRequests,\n  htmlCount,\n  htmlSize,\n  cssCount,\n  cssSize,\n  jsCount,\n  jsSize,\n  jsonCount,\n  jsonSize,\n  imageCount,\n  imageSize,\n  webfontCount,\n  webfontSize,\n  videoCount,\n  videoSize,\n  base64Count,\n  base64Size,\n  cacheHits,\n  cacheMisses,\n  cachePasses,\n  domains,\n  domInteractive,\n  domContentLoaded,\n  domComplete,\n  maxRequestsPerDomain,\n  medianRequestsPerDomain,\n  cookiesSent,\n  cookiesRecv,\n  domainsWithCookies,\n  documentCookiesLength,\n  documentCookiesCount,\n  assetsNotGzipped,\n  assetsWithQueryString,\n  assetsWithCookies,\n  smallImages,\n  smallCssFiles,\n  smallJsFiles,\n  multipleRequests,\n  smallestResponse,\n  biggestResponse,\n  fastestResponse,\n  slowestResponse,\n  smallestLatency,\n  biggestLatency,\n  medianResponse,\n  medianLatency,\n  requestsToFirstPaint,\n  domainsToFirstPaint,\n  requestsToDomContentLoaded,\n  domainsToDomContentLoaded,\n  requestsToDomComplete,\n  domainsToDomComplete,\n\n## Like `performance-budget-plugin`?\n\nSupport it by giving [feedback](https://github.com/AvraamMavridis/performance-budget-plugin/issues), contributing or just by 🌟 starring the project!\n\n### Contribute\n\nAny pull-request is more than welcome :boom: :smile:\n\nThis project adheres to the Contributor Covenant [code of conduct](http://contributor-covenant.org/). By participating, you are expected to uphold this code.\n\n\n### Contact\n\ntwitter: @avraamakis\n\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favraammavridis%2Fperformance-budget-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favraammavridis%2Fperformance-budget-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favraammavridis%2Fperformance-budget-plugin/lists"}