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 🙏

© 2026 – Pkg Stats / Ryan Hefner

tacs

v2.0.2

Published

tacs is a process management system inside the process (nodejs) to handle the huge amount of requests that need accuracy and slow down separately whatever and every time you do a push it will activate an algorithm ($lab), like a Conveyor System Imagine it

Readme

Task Conveyor System

tacs is a process management system inside the process (nodejs) to handle the huge amount of requests that need accuracy and slow down separately whatever and every time you do a push it will activate an algorithm ($lab), like a Conveyor System Imagine it yes this you can do that in your project

Installation

npm install tacs
yarn add tacs

Usage

CommonJS

const { Conveyor, getConveyor } = require("tacs");

ES6

import { Conveyor, getConveyor } from "tacs";

Updates

@latest

+ Fix SyntaxError: Private field '#' must be declared in an enclosing class

Example

Go To Documentation

Try

this is a simple example on replit Try it

First Example (Without Key System)

const { Conveyor } = require("tacs");
const tacs = new Conveyor();
tacs.$lab((element, index, remove) => {
  //To see how remove works go to the examples (see remove)
  if (remove) {
    console.log("This Element is Remove:\n", element);
    return tacs.next();
  }
  console.log(element, "My Index is: ", index);
  tacs.next().catch((err) => {
    console.log(err); //if you Kill the conveyor and you have a next() it will throw an error
  });
});
tacs
  .push([
    {
      name: "John",
      age: 30,
    },
    {
      name: "Mary",
      age: 25,
    },
    {
      name: "Mike",
      age: 20,
    },
    {
      name: "Jane",
      age: 35,
    },
    {
      name: "Joe",
      age: 40,
    },
  ])
  .catch((err) => {
    console.log(err); //if you Kill the conveyor and you have a push() it will throw an error
  });
//Every time you do a push it will activate $lab algorithm

Example (With Key System)

index.js

const { Conveyor, getConveyor } = require("tacs");
const tacs = new Conveyor("employees"); //or getConveyor("employees", true);
tacs.$lab((element, index, remove) => {
  //To see how remove works go to the examples (see remove)
  if (remove) {
    console.log("This Element is Remove:\n", element);
    return tacs.next();
  }
  console.log(element, "My Index is: ", index);
  tacs.next().catch((err) => {
    console.log(err); //if you Kill the conveyor and you have a next() it will throw an error
  });
});
//Every time you do a push it will activate $lab algorithm

another.js

const { getConveyor } = require("tacs");
getConveyor("employees") //if you don't have a conveyor for this key it will throw an error
  .push([
    {
      name: "John",
      age: 30,
    },
    {
      name: "Mary",
      age: 25,
    },
    {
      name: "Mike",
      age: 20,
    },
    {
      name: "Jane",
      age: 35,
    },
    {
      name: "Joe",
      age: 40,
    },
  ])
  .catch((err) => {
    console.log(err); //if you Kill the conveyor and you have a push() it will throw an error
  });

documentation

Method

lab

//this is $lab function that will be emit when you push element or when you call next
tacs.$lab((element, index, remove) => {
  console.log(element, index, remove);
  //To see how remove works go to the examples (see remove)
  if (remove) {
    console.log("This Element is Remove:\n", element);
    tacs.next();
    //if you want set timeout for this function include next method in setTimeout function
    return;
  }
  tacs.next();
  //if you want set timeout for this function include next method in setTimeout function
});

next

//go to next index
tacs.next();
//if you want set timeout for this function include next method in setTimeout function

push

//push(Your Data)
//if you want to push element to the conveyor use this
// This is an example of pushing element to the conveyor
//Array
tacs.push(["JavaScript", "C", "C++", "C#", "Java", "Python"]);
//Object
tacs.push({
  name: "John",
  age: 30,
  city: "New York",
});
//String or Number or any other type
tacs.push("Arth");

sleep

//sleep the conveyor {timeout} milliseconds later after timeout is over it wil be next automatically
tacs.sleep(1000); //sleep for 1 second

on

//The events
tacs.on("push", (element) => {
  console.log(element); //element is an array
});
tacs.on("end", (element) => {
  console.log(element); //Array: all the element in the conveyor
});

restart

//if you want to restart the conveyor use this and it will restart from the first index
tacs.on("end", (element) => {
  tacs.push(tacs.get().pushed);
});

kill

//kill the conveyor use this if you use this you can't use next() or any other function
tacs.kill();

get

pushed

tacs.get().pushed; //Array: returns an array with the pushed element

option

tacs.get().option; //String: returns the last option

remove

//remove the element from the conveyor and return remove parameter in $lab function
tacs.get(/*<Element>*/).remove(); //No Return: remove element from the array
//Some examples
tacs.get({ name: "Joe", age: 40 }).remove(); //remove element from the array
//or you can use this specitic value
tacs.get({ name: "Joe" }).remove(); //remove element from the array
//String or Number or any other type exmaple for string
tacs.get("JavaScript").remove(); //remove element from the array

exist

tacs.get(/*<Element>*/).exist(); //Boolean: returns true if the element exist in the array
//Some examples
tacs.get({ name: "Joe", age: 40 }).exist(); //returns true if the element exist in the array
//or you can use this specitic value
tacs.get({ name: "Joe" }).exist(); //returns true if the element exist in the array
//String or Number or any other type exmaple for string
tacs.get("JavaScript").exist(); //returns true if the element exist in the array

Links

License