/profiler

Firefox Profiler — Web app for Firefox performance analysis

Primary LanguageJavaScriptMozilla Public License 2.0MPL-2.0

Firefox Profiler

slack-badge

The Firefox Profiler visualizes performance data recorded from web browsers. It is a tool designed to consume performance profiles from the Gecko Profiler but can visualize data from any profiler able to output in JSON. The interface is a web application built using React and Redux and runs entirely client-side.

Mozilla develops this tool to help make Firefox silky smooth and fast for millions of its users, and to help make sites and apps faster across the web.

Screenshot of the Firefox Profiler

This project was previously called perf.html and Cleopatra.

Usage

Visit profiler.firefox.com 🚀

This project is live on https://profiler.firefox.com/. The website includes instructions on how to get going to start recording and viewing performance profiles.

Accessibility: Assistive technology support

The Profiler was tested with recent versions of the following assistive technology:

NVDA (Windows) on Firefox and Chrome browsers
VoiceOver (Mac OS X) on Chrome
Orca (Linux) on Firefox

If you experience problems using any of the above technologies, please file a bug.

If you would like to help us test on other assistive technologies or improve the existing code, we would love your contributions!

Development

You will need a recent enough version of Yarn, version 1.10 is known to work correctly. You can install it into your home directory on Linux and probably OS X with:

cd /tmp
wget https://yarnpkg.com/install.sh
chmod a+x install.sh
./install.sh

To download and build the Firefox Profiler web app run:

git clone git@github.com:firefox-devtools/profiler.git
cd profiler
yarn install
yarn start

You can also develop the Firefox Profiler online in a pre-configured development environment:

Open in Gitpod

For more detailed information on getting started contributing. We have plenty of docs available to get you started.

Contributing Find out in detail how to get started and get your local development environment configured.
Code of Conduct We want to create an open and inclusive community, we have a few guidelines to help us out.
Developer Documentation Want to know how this whole thing works? Get started here.
Source Files Dive into the inner workings of the code. Most folders have a README.md providing more information.
Gecko Profiler Addon The Firefox Profiler can record profiles directly in the browser using an add-on, development takes place in another repo.

Discussion

Say hello on slack in the #perf channel.

License

MPL v2

Some permissive software licenses request but do not require an acknowledgement of the use of their software. We are very grateful to the following people and projects for their contributions to this product:

  • The zlib compression library (Jean-loup Gailly, Mark Adler and team)