{"id":13726012,"url":"https://github.com/v8/web-tooling-benchmark","last_synced_at":"2025-04-12T23:30:12.573Z","repository":{"id":43242683,"uuid":"107392311","full_name":"v8/web-tooling-benchmark","owner":"v8","description":"JavaScript benchmark for common web developer workloads","archived":false,"fork":false,"pushed_at":"2024-08-31T10:54:45.000Z","size":8126,"stargazers_count":437,"open_issues_count":21,"forks_count":68,"subscribers_count":31,"default_branch":"master","last_synced_at":"2024-10-30T02:37:36.650Z","etag":null,"topics":["benchmark","benchmarking","benchmarking-suite","javascript","node-js","nodejs","performance","performance-testing","v8","v8-javascript-engine","v8js"],"latest_commit_sha":null,"homepage":"https://v8.github.io/web-tooling-benchmark/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/v8.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-18T10:21:59.000Z","updated_at":"2024-10-18T11:49:25.000Z","dependencies_parsed_at":"2024-11-12T21:00:37.572Z","dependency_job_id":"472920fe-e1c6-4c1c-a741-2314a677bd18","html_url":"https://github.com/v8/web-tooling-benchmark","commit_stats":{"total_commits":125,"total_committers":12,"mean_commits":"10.416666666666666","dds":0.352,"last_synced_commit":"4a12828c6a1eed02a70c011bd080445dd319a05f"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v8%2Fweb-tooling-benchmark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v8%2Fweb-tooling-benchmark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v8%2Fweb-tooling-benchmark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v8%2Fweb-tooling-benchmark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/v8","download_url":"https://codeload.github.com/v8/web-tooling-benchmark/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248647249,"owners_count":21139081,"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":["benchmark","benchmarking","benchmarking-suite","javascript","node-js","nodejs","performance","performance-testing","v8","v8-javascript-engine","v8js"],"created_at":"2024-08-03T01:02:47.272Z","updated_at":"2025-04-12T23:30:12.546Z","avatar_url":"https://github.com/v8.png","language":"JavaScript","readme":"# Web Tooling Benchmark\n\n[![Build Status](https://travis-ci.org/v8/web-tooling-benchmark.svg?branch=master)](https://travis-ci.org/v8/web-tooling-benchmark) [![styled with prettier](https://img.shields.io/badge/styled_with-prettier-ff69b4.svg)](https://github.com/prettier/prettier)\n\nThis is a benchmark suite designed to measure the JavaScript-related\nworkloads commonly used by web developers, such as the\ncore workloads in popular tools like [Babel](https://github.com/babel/babel)\nor [TypeScript](https://github.com/Microsoft/TypeScript). The goal is to measure **only** the\nJavaScript performance aspect (which is affected by the JavaScript engine) and not measure I/O\nor other unrelated aspects.\n\nSee the [in-depth\nanalysis](https://github.com/v8/web-tooling-benchmark/blob/master/docs/in-depth.md)\nfor a detailed description of the tests included in this benchmark suite.\n\nThe latest browser version of the benchmark is available at\n\u003chttps://v8.github.io/web-tooling-benchmark/\u003e.\n\n## Support\n\nThe Web Tooling Benchmark supports the latest [active\nLTS](https://github.com/nodejs/Release#release-schedule) version of Node.js. To see the supported\nNode.js versions of the current version of the benchmark, see [the `node_js` section of our CI\nconfiguration](https://github.com/v8/web-tooling-benchmark/blob/master/.travis.yml).\n\n## Building\n\nTo build the benchmark suite, run\n\n```\n$ npm install\n```\n\nassuming that you have a working [Node.js](https://nodejs.org) installation. Once\nthe command is done, it produces a bundled version that is suitable to run in\nJS shells (i.e. `d8`, `jsc` or `jsshell`) in `dist/cli.js` and another bundle\nin `dist/browser.js` that is used by the browser version in `dist/index.html`.\n\nTo build an individual benchmark rather than the entire suite, pass the `--env.only`\nCLI flag:\n\n```\n$ npm run build -- --env.only babel\n```\n\n## Running\n\nYou can either run the benchmark suite directly via [Node](https://nodejs.org/),\ni.e. like this:\n\n```\n$ node dist/cli.js\nRunning Web Tooling Benchmark v0.5.2…\n-------------------------------------\n         acorn:  5.50 runs/s\n         babel:  6.10 runs/s\n  babel-minify:  9.13 runs/s\n       babylon:  8.00 runs/s\n         buble:  4.77 runs/s\n          chai: 14.47 runs/s\n  coffeescript:  5.62 runs/s\n        espree:  4.05 runs/s\n       esprima:  6.68 runs/s\n        jshint:  7.84 runs/s\n         lebab:  7.52 runs/s\n       postcss:  5.06 runs/s\n       prepack:  6.26 runs/s\n      prettier:  5.97 runs/s\n    source-map:  8.60 runs/s\n        terser: 16.40 runs/s\n    typescript: 10.04 runs/s\n     uglify-js:  3.81 runs/s\n-------------------------------------\nGeometric mean:  6.98 runs/s\n```\n\nOr you open a web browser and point it to `dist/index.html`, or you can use one\nof the engine JS shells to run the special bundle in `dist/cli.js`. The easiest\nway to install recent versions of the supported JS engine shells is to run\n[`jsvu`](https://github.com/GoogleChromeLabs/jsvu). Afterwards, you can run the\nbenchmark as follows:\n\n```sh\n$ chakra dist/cli.js\n$ javascriptcore dist/cli.js\n$ spidermonkey dist/cli.js\n$ v8 dist/cli.js\n```\n\nTo run an individual benchmark rather than the entire suite via Node, pass the\n`--only` CLI flag:\n\n```\n$ npm run build -- --env.only babel \u0026\u0026 npm run benchmark\n```\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fv8%2Fweb-tooling-benchmark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fv8%2Fweb-tooling-benchmark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fv8%2Fweb-tooling-benchmark/lists"}