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

@leanscope/inspection

v0.1.7

Published

## Warning

Downloads

226

Readme

Inspection

Warning

Inspection is currently still under development. Therefore be careful when using this package in production since breaking changes will very likely occur.

We currently have a dependency to firebase since our data sender service sends data to a firebase instance. However this does not mean that you have to use firebase in order to use this package. You can also write your own sender service that covers your needs.

About

Inspection is a lightweight package that enables you to track usage data from your app and cache it locally before sending it to a backend server.

Usage

Tracking events

In order to track events and save them locally you need to create an inspector. The type will define what the event context must look like when you call the trackEvent() method. If you have two use cases where the event context differs, the intended way would be to create an inspector for each of the use cases.

const inspector = Inspection.instance().createInspector<T>();

That inspector can then be used to track events. As parameter the trackEvent method take a object that contains the context to the tracked event. The event context gets added to some metadata to create an observation.

const eventContext = {};
inspector.trackEvent(eventContext);

Sending observations to a backend

To send the locally stored observations to a backend you need to add a IDataSenderService to the Inspection instance. As second parameter of the addDataSenderService method you can specify the interval in which the service should send data to the backend. If left empty this defaults to 60000 ms.

const senderService = new ConsoleSenderService();
const sendingIntervalInMs = 120000;
Inspection.instance().addDataSenderService(senderService, sendingIntervalInMs);

If you want to stop the sender service from continually sending data you can also remove it from the inspection instance. Therefore you need the id of the sender service which you get from the addDataSenderService method.

const id = Inspection.instance().addDataSenderService(senderService);
Inspection.instance().removeDataSenderService(id);