A performance runner that collects detailed traces and reports for JavaScript libraries and applications using Chrome.
Speedracer is a performance runner that profiles JavaScript code by running scripts in Chrome and collecting detailed performance traces and reports. It helps developers measure and analyze scripting, rendering, and painting metrics to identify performance bottlenecks in libraries or applications.
JavaScript developers and library authors who need to track performance regressions, benchmark code changes, or analyze runtime performance in a controlled environment.
It provides a structured, test-runner-like approach to performance profiling, generating both raw Chrome traces and summarized reports for easy integration into development workflows.
Collect performance metrics for your library/application.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses Chrome DevTools protocol to collect raw trace events, enabling granular analysis of scripting, rendering, and painting metrics for in-depth profiling.
Generates JSON reports summarizing key metrics like FPS and category times, making it easy to integrate performance data into development workflows.
Supports asynchronous races with Promises, allowing developers to profile async operations effectively, as shown in the README examples.
Races can import ES6 and CommonJS modules, leveraging modern JavaScript features depending on Chrome's support, facilitating profiling of contemporary codebases.
The project is explicitly marked as unmaintained, meaning no updates, bug fixes, or support, which poses a risk for production use.
Headless execution only works with Chrome Canary on Mac OS X, restricting cross-platform usage and requiring visible browser instances on other systems.
Advanced goals like regression testing and benchmarking are listed as future plans but not implemented, limiting out-of-the-box utility for comprehensive performance analysis.