respeed

A javascript speed measurement utility.

Usage no npm install needed!

<script type="module">
  import respeed from 'https://cdn.skypack.dev/respeed';
</script>

README

Respeed.JS

Respeed is a time measurement utility for NodeJS applications. Respeed is a refactorization and reenvisioned version of ArcticChrono, my first TypeScript/NodeJS module. Respeed is perfect for those that would like to know the performance metrics of their applications with minimal set up.

For the most optimal and accurate results, use high-resolution mode for the most accurate results possible. Process.hrtime may not be available in all versions of Node, and currently Respeed only supports Version 8 of Node (LTS). For the highest compatability, use the default configuration for Respeed.

npm i respeed

API

Using Respeed is incredibly simple. By default, Respeed using date-time mode. This can be changed to high precision by setting mode to high-precision. The precision property allows you to determine how many decimals back to round down to; this is by default turned off for the most accurate results.

const respeed = require("respeed");
let chrono = new respeed({
    mode: "high-precision",
    precision: 3
});

setTimeout(() => {
    console.log(chrono.stop()); // Outputs the time between being created and now.
}, 2000);

Respeed instances can be configured with these properties:

{
    precision: 0,           // Decimal precision, 0 is uncalculated.
    mode: "date-time",      // modes: high-resolution, date-time
    autostart: true,        // Automatically starts the timer.
    throw: false,           // Throws an error if there is an initialize issue.
}

If you set autostart to false, then you must call start() otherwise any call to stop() will give an error.