npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

mstime

v0.6.9

Published

a lightweight module (2KB gzip) to measure & visualize code performance in millisecond (ms), run on Node & browser. No dependencies!

Downloads

804

Readme

mstime

NPM version Build Status Coverage Status NPM

a lightweight module (2KB gzip) to measure & visualize code performance in millisecond (ms), run on Node & browser. No dependencies!

mstime uses performance.now Web API (high resolution timer) to measure the difference between start & end points.

mstime has an easy Plugin System which lets you write simple (yet powerful) plugins to process/visualize data in different ways.

Example / Demo

  • Example in Node: https://runkit.com/ngduc/mstime
  • Example in Browser: https://rawgit.com/ngduc/mstime/master/docs/demo/index.html
  • Example in Codesandbox: https://codesandbox.io/s/jlnp3owm2y

Demo Screenshot

Install

$ npm install --save mstime

Usage

import mstime from "mstime";

mstime.start("codeblock1");
processData(); // your function
const result = mstime.end("codeblock1");

result is a JSON object: (all values are in milliseconds)

{
  entries: [
    { start: 41991120.53, end: 41991133.04, diff: 12.50 }
  ]
  last: 12.50,
  sum: 12.50,
  avg: 12.50
}

Available builds (dist): CommonJS, ES, UMD.

Config

mstime.config({
  decimalDigits: 4, // default: 2
  consoleTime: true // use console.time & console.timeEnd, default: false
});

Plugins

Plugins offer more useful abilities on the captured data.

A plugin is just a function that processes data and returns this structure:

const pluginExample = ({ config }) => ({
  name: "msplugin-example",
  run: (allData, timerData) => {
    const output = "do something useful here with allData & timerData...";
    return {
      // property & value can be anything
    };
  }
});

run function will get called on mstime.end and its result will be put in "timerData.plugins"

List of Plugins:

- msplugin-use-local-storage   use localStorage to store timer data. 
- msplugin-trim-mean           calculate for trimmed mean.
- msplugin-chartist            plot data using Chartist.

- msplugin-find-outliers       (In Progress: find outliers)
- msplugin-post-to-api         (In Progress: post timer data to API)
- msplugin-save-to-db          (In Progress: save timer data to DB)
- (create your plugin & add it here...)

Documentation

License

MIT © Duc Nguyen