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

portdoom

v1.0.3

Published

Kill ports, not vibes. The fastest way to view and manage local ports.

Readme

PortDoom 💀

Kill ports, not vibes. Doom your ports to oblivion.

npm npm platform license size


🚀 Quick Start

# No install needed - summon instantly
npx portdoom

# Or install globally (if you dare)
npm install -g portdoom
portdoom

✨ Features

  • Lightning fast - 22ms refresh with intelligent caching
  • 🎯 Smart grouping - Ports organized by application
  • 🧠 Persistent hiding - Banish apps forever, saved locally
  • 🖥️ Cross-platform - Windows, macOS, Linux
  • 🎨 Dark TUI - Doom-themed terminal interface
  • 📦 Zero dependencies - Pure Node.js, ~50KB total
  • 🔒 Privacy-first - All data stays in your realm

🎮 Controls

| Key | Action | |-----|--------| | | Navigate the abyss | | Space | Execute selected process | | h | Banish this port (session) | | H | Banish entire app (eternal) | | s | Reveal system daemons | | r | Refresh port list | | u | Resurrect all banished | | 1 - 9 | Quick execute by ID | | q | Escape to reality |


📸 Screenshots

Interactive Mode

PortDoom 💀
─────────────────────────────────────────────────────────────────

  steam.exe (4 ports)
    ▶ 01  27036  0.0.0.0          8872  active
       02  27060  0.0.0.0          8872  active
       03  65022  0.0.0.0          8872  active
       04  65023  0.0.0.0          8872  active

  Code.exe (1 port)
       05  5500   127.0.0.1       20024  active

─────────────────────────────────────────────────────────────────
  5 ports  2 apps  0 banished

  ↑↓ navigate  space kill  h banish  H eternal-banish  s system  r refresh  u resurrect  1-9 quick-execute  q quit

Non-Interactive (Piped Output)

$ portdoom > ports.txt
ID   APP                                    PORTS
────────────────────────────────────────────────────────────
 01   Code.exe                               5500
 02   steam.exe                              27036, 27060, 65022, 65023
 03   PanGPS.exe                             4767
 04   ArmouryCrateControlInterface.exe       7778, 50923
 05   AsusSoftwareManager.exe                24830

🎯 Use Cases

Development

# Find what's haunting port 3000
portdoom | grep 3000

# Execute it (navigate + space, or type "3" + Enter)

Clean Up

# Banish apps you don't care about (press H)
# They'll stay in the void forever in ~/.portdoom/config.json

Scripting

# Summon all ports as text
portdoom > report.txt

# Check if a port is possessed
portdoom | grep -q 3000 && echo "Port 3000 is haunted"

🔧 Configuration

PortDoom stores banished apps in your crypt:

  • Windows: C:\Users\You\.portdoom\config.json
  • macOS/Linux: ~/.portdoom/config.json
{
  "banishedApps": ["steam.exe", "OneDrive.exe"]
}

Edit this ancient tome manually or use H in the app to banish, u to resurrect all.


🛠️ Development

# Summon the source
git clone https://github.com/latiosthinh/portdoom.git
cd portdoom

# Run directly
node bin/cli.js

# Link globally for testing
npm link
portdoom

# Test non-interactive mode
node bin/cli.js > output.txt

🏗️ How It Works

PortDoom invokes native OS incantations - no dependencies required:

| Platform | Port Detection | Process Execution | |----------|---------------|-------------------| | Windows | netstat -ano | taskkill /PID | | macOS | lsof -i -P -n | kill -9 | | Linux | ss -tlnp | kill -9 |

Process names are cached for 5 seconds for instant refresh.


📊 Performance

| Action | Time | |--------|------| | First summoning | ~1.3s | | Cached refresh | ~22ms ⚡ | | Package size | ~50KB | | Dependencies | 0 (pure darkness) |


🙋 FAQ

Q: Why isn't npx portdoom showing the latest features?
A: Make sure you're using the latest version from npm. For development, use npm link.

Q: Where are banished apps stored?
A: ~/.portdoom/config.json - edit this ancient tome to manage banished apps.

Q: Can I banish system processes?
A: System daemons are hidden by default. Press s to reveal them (if you dare).

Q: Does this work on WSL?
A: Yes! PortDoom detects the plane of existence and uses appropriate incantations.

Q: Is this safe?
A: PortDoom only shows and executes processes you have permission to execute. Admin/sudo may be required for system daemons.

Q: What happens if I execute the wrong process?
A: Like any dark art, use with caution. You can restart most processes, but some may be... permanently doomed. 💀


🤝 Contributing

Contributions welcome! Areas we'd love help:

  • 🎨 Custom themes/colors (darker themes preferred)
  • 📊 Export to JSON/CSV
  • 🔍 Search/filter functionality
  • 🧪 Automated tests
# Join the coven
git clone https://github.com/latiosthinh/portdoom.git

📝 Changelog

v1.0.0 - The Awakening

  • ✨ Initial release
  • 🎯 Port grouping by application
  • 🧠 Eternal banishment (persistent hiding)
  • ⚡ 50x faster refresh with caching
  • 🖥️ Cross-platform support
  • 💀 Doom-themed UI

📄 License

MIT © PortDoom Team

Use responsibly. The authors are not responsible for accidentally doomed ports.


Forged in darkness 💀 for developers who mean business

Report IssueRequest FeatureDiscussions