<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="viewport" content="width=850" />
        <title>Speedometer 3.1 About</title>
        <link rel="stylesheet" href="resources/main.css" />
        <link rel="icon" href="resources/favicon.png" />
    </head>
    <body>
        <main>
            <section id="about" class="visible" data-title="About">
                <a href="./" class="logo">
                    <img srcset="resources/logo@2x.png 2x" src="resources/logo.png" alt="Speedometer" />
                    <div class="version">3.1</div>
                </a>
                <div class="section-grid">
                    <h1 class="section-header">About Speedometer 3</h1>
                    <div class="section-content">
                        <p>Speedometer 3 is a benchmark for web browsers that measures Web application responsiveness by timing simulated user interactions on various workloads.</p>
                        <p>
                            It's developed as an open source project, with decisions being made under a <a href="https://github.com/WebKit/Speedometer/blob/main/Governance.md">multistakeholder governance model</a> between the three widely distributed
                            web browser engine projects.
                        </p>
                        <p>
                            The following high level user journeys are implemented in the current version. Each of these journeys has one or more workloads which test important aspects of it — for example commonly used patterns, frameworks, or
                            technologies.
                        </p>
                        <ul>
                            <li>Working with a todo list</li>
                            <ul>
                                <li>Measures the time to add, complete, and remove 100 todo items in a basic list.</li>
                                <li>Each example implements the same todo application (TodoMVC) using different techniques and frameworks.</li>
                                <li>
                                    Workloads: <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/vanilla-examples/javascript-es5" target="_blank">TodoMVC-JavaScript-ES5</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex" target="_blank">TodoMVC-JavaScript-ES6-Webpack-Complex-DOM</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/vanilla-examples/javascript-web-components" target="_blank">TodoMVC-WebComponents</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/react-complex" target="_blank">TodoMVC-React-Complex-DOM</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/react-redux" target="_blank">TodoMVC-React-Redux</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/backbone" target="_blank">TodoMVC-Backbone</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/angular-complex" target="_blank">TodoMVC-Angular-Complex-DOM</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/vue" target="_blank">TodoMVC-Vue</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/jquery" target="_blank">TodoMVC-jQuery</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/preact-complex" target="_blank">TodoMVC-Preact-Complex-DOM</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/svelte-complex" target="_blank">TodoMVC-Svelte-Complex-DOM</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/todomvc/architecture-examples/lit-complex" target="_blank">TodoMVC-Lit-Complex-DOM</a>
                                </li>
                            </ul>
                            <li>Editing rich text</li>
                            <ul>
                                <li>Loading and styling text inside WYSIWYG and code editors.</li>
                                <li>
                                    Workloads: <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/editors" target="_blank">Editor-CodeMirror</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/editors" target="_blank">Editor-TipTap</a>
                                </li>
                            </ul>
                            <li>Rendering charts</li>
                            <ul>
                                <li>Loading and interacting with SVG and canvas charts.</li>
                                <li>
                                    Workloads: <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/charts" target="_blank">Charts-observable-plot</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/charts" target="_blank">Charts-chartjs</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/react-stockcharts" target="_blank">React-Stockcharts-SVG</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/perf.webkit.org" target="_blank">Perf-Dashboard</a>
                                </li>
                            </ul>
                            <li>Reading a news site</li>
                            <ul>
                                <li>Navigating across pages and interacting with a typical looking news site.</li>
                                <li>
                                    Workloads: <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/newssite/news-next" target="_blank">NewsSite-Next</a>,
                                    <a href="https://github.com/WebKit/Speedometer/tree/release/3.1/resources/newssite/news-nuxt" target="_blank">NewsSite-Nuxt</a>
                                </li>
                            </ul>
                        </ul>

                        <p class="note"><strong>Notes about methodology</strong></p>
                        <ul>
                            <li>Although user-driven actions like mouse movements and keyboard input cannot be fully emulated in JavaScript, Speedometer does its best to faithfully replay a typical workload within the demo applications.</li>
                            <li>To make the run time long enough to measure with the limited precision, we synchronously execute a large number of the operations, such as adding one hundred to-do items.</li>
                            <li>
                                Modern browser engines execute some work asynchronously as an optimization strategy to reduce the run time of synchronous operations. While returning control back to JavaScript execution as soon as possible is worth
                                pursuing, the run time cost of such an asynchronous work should still be taken into a holistic measurement of web application performance. In addition, some JavaScript frameworks call into DOM APIs asynchronously as an
                                optimization technique. Speedometer approximates the run time of this asynchronous work in the UI thread with a zero-second timer that is scheduled immediately after each execution of synchronous operations.
                            </li>
                            <li>Speedometer does not attempt to measure concurrent asynchronous work (e.g. in Web Workers).</li>
                            <li>Speedometer should not be used as a way to compare the performance of different JavaScript frameworks.</li>
                            <li>
                                The goal of all workloads is to represent a scenario that could be found on the Web. Although all workloads strive to use patterns that are commonly used, some implementation details are Speedometer specific and should
                                not be used as a guideline on how to implement and deploy a standalone app. For example, due to constraints within the test harness, workloads must not depend on a server infrastructure to function properly and are
                                built as static files ahead of time.
                            </li>
                        </ul>
                    </div>
                    <div class="buttons section-footer">
                        <div class="button-row">
                            <a class="button" href="./" title="Show main section.">Home</a>
                            <a class="button" href="instructions.html" title="Show test instructions.">Test Instructions</a>
                        </div>
                    </div>
                </div>
            </section>
        </main>
    </body>
</html>
