Thank you for considering contributing to ESBench!
The ESBench repo is a monorepo using pnpm workspaces. The package manager used to install and link dependencies must be pnpm.
After cloning and installing, there are a few more steps before you can run it.
A build step is required before running examples and tests:
pnpm buildcd core
vitest run-
core: The package
esbench- Files in the top level of
src/is used to run suite and parse results, they should be compatibility with browsers. - Subfolders of
src/are modules of the entry pointesbench/hostand theesbenchCLI.
- Files in the top level of
-
docs: Source code of https://esbench.vercel.app, powered by VitePress.
-
example: Contains example code.
- api: Code snippets of Runner API
- configs: Executor and Builder examples.
- profilers: Profiler examples.
- es: Common benchmarks that can be run on all popular runtimes.
- node: Benchmarks use Node API.
- web: Benchmarks use browser-specific API.
- webext: Benchmarks use WebExtension API.
- misc: Benchmarks need process with special toolchain.
- self: Performance tests of ESBench's code.
-
reporter-html: Source of the HTML reporter, and run its
buildscript will generate the HTML template file forhtmlReporter.