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 ๐Ÿ™

ยฉ 2025 โ€“ย Pkg Stats / Ryan Hefner

p3x-tools

v2025.4.121

Published

๐Ÿ’ฃ Tools

Readme

NPM Donate for PatrikX3 / P3X Contact Corifeus / P3X Corifeus @ Facebook Uptime ratio (90 days)

๐Ÿ’ฃ Tools v2025.4.121

๐ŸŒŒ Bugs are evidentโ„ข - MATRIX๏ธ
๐Ÿšง This project is under active development!
๐Ÿ“ข We welcome your feedback and contributions.

NodeJS LTS is supported

๐Ÿ› ๏ธ Built on NodeJs version

v22.13.1

๐Ÿ“ Description

This is an internal tool program (p3x) to manage a recursive async and serial command for NPM packages.

Install

sudo npm install -g p3x-tools --unsafe-perm=true --allow-root

Examples

All folders exclude node_modules and bower_components except it is included.

p3x docker clean # delete images the have exited
p3x docker clear # delete all images in docker
p3x docker free # delete exited containers
p3x pkg yarn install | <command> # installs recursive every project that has a package.json
p3x build yarn install  | <command>  # install recursive every package that has a corifeus-builder
p3x npm unpublish # unpublish every package from NPM except the last Minor version (Major.Minor.Build-Commit)
p3x link # links every recursive given package together
p3x git <command> # you can execute a command on every git dir, recursive
p3x rm <folder> # remove recursive the given folder
p3x ncu -u # updates recursive all packages
p3x git pull # recursive pull every folder
p3x git push # recursive push every folder
p3x git renew|truncate # remote all commits, from #1231 commit to #1
p3x git init repo-name # .git is not required, is auto added, post-update is generated so it is my own, specific for the patrikx3.com server git repo (it adds in the webhook), the names are only lower cased forcefully a-z, digit and dash.

and more ...

If you want the commands is serials, add the -s or --serial flag, otherwise all async.

etc ...

Dependencies Fix

dependencies-fix.json

Webpack repos

  • gitlist
  • redis-ui-material
  • fortune-cookie
  • corifeus-builder-angular
  • sygnus ngivr builder webpack

Default excludes from GitHub:

github.json

Github fork upstream

1 . Clone your fork:

git clone [email protected]:YOUR-USERNAME/YOUR-FORKED-REPO.git

2 . Add remote from original repository in your forked repository:

cd into/cloned/fork-repo  
git remote add upstream https://github.com/ORIGINAL-DEV-USERNAME/REPO-YOU-FORKED-FROM.git  
git fetch upstream  

3 . Updating your fork from original repo to keep up with their changes:

git pull upstream master
git merge upstream/master
git push

# or
git checkout dev
git pull upstream dev
git merge upstream/dev
git push

Warning / deprecate

npm deprecate <pkg>[@<version>] <message>
// or better
npm deprecate my-thing@"< 0.2.3" "critical bug fixed in v0.2.3"

Really make a bare repo to smaller

https://stackoverflow.com/questions/2116778/reduce-git-repository-size
https://stackoverflow.com/questions/3797907/how-to-remove-unused-objects-from-a-git-repository/14729486#14729486

git gc --prune=now --aggressive

Show available versions on NPM

# for example
npm show p3x-angular-compile versions --json

Verdaccio NPM fix

https://github.com/verdaccio/verdaccio/issues/577

docker run --rm -it node:9.2.0-alpine sh
/ # npm login --registry https://npm.company.com
Username: admin
Password:
Email: (this IS public) [email protected]
Logged in as admin on https://npm.company.com/.
/ # cat ~/.npmrc
//npm.company.com/:_authToken=Rwl9t+GHjlgP+brFJ6WycIe1y6r3Z+ShUEqsLusmFC11w3n6ex8JdmkMoKv/0U/D
/ #

Another solution is like this:

# project .npmrc
registry = "https://registry.acmeco.com"
ca = null
always-auth = true

Swap for Docker

https://askubuntu.com/questions/417215/how-does-kernel-support-swap-limit

Edit:

sudo nano /etc/default/grub

Like:

GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1" 

Update:

sudo update-grub

Edit:

touch /etc/sysctl.d/90-swappiness.conf
nano /etc/sysctl.d/90-swappiness.conf
vm.swappiness=1

sudo reboot

How To Configure a Mail Server Using Postfix, Dovecot, MySQL, and SpamAssassin and Sieve to move to Spam / Junk folder

https://superuser.com/questions/1248257/how-to-configure-a-mail-server-using-postfix-dovecot-mysql-and-spamassassin-a/1248470#1248470

This is how is solved it (it took 7 months):

apt install dovecot-sieve dovecot-managesieved
nano /etc/dovecot/conf.d/90-plugin.conf

Add or set in:

protocol lmtp {
        mail_plugins = $mail_plugins sieve
        auth_socket_path = /var/run/dovecot/auth-master
    }  
nano /etc/dovecot/sieve.conf

Add in

require ["fileinto", "mailbox"];
    if header :contains "X-Spam-Flag" "YES" {
        # move mail into Folder Spam, create folder if not exists
        fileinto :create "Spam";
        stop;
    }

Execute

sievec /etc/dovecot/sieve.conf
nano /etc/spamassassin/local.cf

Add in or set it, it's like this ( I think you don't need everythign else):

report_safe             0
required_score          2.0
use_bayes               1
use_bayes_rules         1
bayes_auto_learn        1
skip_rbl_checks         0
use_razor2              1
use_pyzor               0

add_header all Status _YESNO_, score=_SCORE_ required=_REQD_ version=_VERSION_
bayes_ignore_header X-Bogosity
bayes_ignore_header X-Spam-Flag
bayes_ignore_header X-Spam-Status

Edit a new file again

nano /etc/dovecot/conf.d/90-sieve.conf

Set this config, you don't need anything else:

plugin {
    sieve = /etc/dovecot/sieve.conf
}

Edit the mail boxes, so jo have Junk, I think jo just need add or uncomment the Junk setting:

nano /etc/dovecot/conf.d/15-mailboxes.conf 

Add in this config

namespace inbox {
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Junk {
    auto = subscribe
    special_use = \Junk
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
}

My user for the e-mail server is vmail, so do like this:

chmod ug+w /etc/dovecot
chmod ug+w /etc/dovecot/sieve.conf.svbin

chown -R vmail:vmail /etc/dovecot

Restart your mail server:

service postfix reload && service spamassassin restart && service dovecot restart

GRUB for another menu once

Make sure /etc/default/grub has this:

GRUB_DEFAULT=saved

You can choose you menu like:

grep -i "menuentry '" /boot/grub/grub.cfg

The boot with your menu:

sudo -i
# my workstation boot from win
grub-reboot 2 
reboot

Git synchronize

git submodule sync

๐Ÿš€ Quick and Affordable Web Development Services

If you want to quickly and affordably develop your next digital project, visit corifeus.eu for expert solutions tailored to your needs.


๐ŸŒ Powerful Online Networking Tool

Discover the powerful and free online networking tool at network.corifeus.com.

๐Ÿ†“ Free
Designed for professionals and enthusiasts, this tool provides essential features for network analysis, troubleshooting, and management.
Additionally, it offers tools for:

  • ๐Ÿ“ก Monitoring TCP, HTTP, and Ping to ensure optimal network performance and reliability.
  • ๐Ÿ“Š Status page management to track uptime, performance, and incidents in real time with customizable dashboards.

All these features are completely free to use.


โค๏ธ Support Our Open-Source Project

If you appreciate our work, consider โญ starring this repository or ๐Ÿ’ฐ making a donation to support server maintenance and ongoing development. Your support means the world to usโ€”thank you!


๐ŸŒ About My Domains

All my domains, including patrikx3.com, corifeus.eu, and corifeus.com, are developed in my spare time. While you may encounter minor errors, the sites are generally stable and fully functional.


๐Ÿ“ˆ Versioning Policy

Version Structure: We follow a Major.Minor.Patch versioning scheme:

  • Major: ๐Ÿ“… Corresponds to the current year.
  • Minor: ๐ŸŒ“ Set as 4 for releases from January to June, and 10 for July to December.
  • Patch: ๐Ÿ”ง Incremental, updated with each build.

๐Ÿšจ Important Changes: Any breaking changes are prominently noted in the readme to keep you informed.


P3X-TOOLS Build v2025.4.121

NPM Donate for PatrikX3 / P3X Contact Corifeus / P3X Like Corifeus @ Facebook