Skip to content

firefox-devtools/profiler

This branch is up to date with main.

Folders and files

NameName
Last commit message
Last commit date
Sep 23, 2024
Feb 9, 2021
Nov 26, 2024
Sep 1, 2023
Mar 1, 2024
Dec 17, 2024
Dec 18, 2024
Sep 1, 2023
Dec 10, 2024
Dec 4, 2024
Dec 31, 2024
Jul 11, 2024
May 17, 2019
Sep 14, 2022
Sep 1, 2023
Sep 1, 2023
Aug 16, 2023
Aug 3, 2021
Sep 1, 2023
Sep 1, 2023
Feb 6, 2024
Nov 28, 2023
Nov 28, 2023
Sep 1, 2023
Sep 27, 2023
Apr 3, 2019
Sep 1, 2023
May 31, 2024
Nov 26, 2016
Sep 1, 2023
Feb 6, 2024
Jun 8, 2023
Jul 5, 2022
Jun 11, 2021
Dec 18, 2024
Nov 3, 2021
Oct 3, 2023
Oct 3, 2023
Sep 19, 2023
Dec 18, 2024

Repository files navigation

Firefox Profiler

Matrix

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

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 1 (Classic), version 1.10 is known to work correctly. You can install it using npm install -g yarn. Please refer to its documentation for other possible install procedures.

To download and build the Firefox Profiler web app run:

git clone [email protected]:firefox-devtools/profiler.git
cd profiler
yarn install
yarn start

Flow is used for type checking. VSCode users can install the "Flow Language Support" extension, and disable VSCode's built-in TypeScript extension in the workspace via the setup instructions here.

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

Open in Gitpod

Please look at our gitpod documentation for more information.

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.
End-User Documentation These docs are customized for actual users of the profiler, not just folks contributing.
Gitpod documentatation Start here if you want to set up a work space on gitpod.

Discussion

Say hello on Matrix in the Firefox Profiler channel (#profiler:mozilla.org).

License

MPL v2 is designed to encourage contributors to share modifications they make to the code, while still allowing them to combine the code with code under other licenses (open or proprietary) with minimal restrictions.

We are very grateful to the the zlib compression library (Jean-loup Gailly, Mark Adler and team) for their contribution to the project.