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

pratham-terminal

v1.0.0

Published

A powerful personal operations terminal by Pratham

Readme

PRATHAM Personal Ops Terminal

A powerful, customizable command-line interface for personal system operations, monitoring, networking, development tools, and productivity.

Version License Node

🚀 Features

🔐 Security

  • Password-protected access with environment variable support
  • Rate limiting (3 failed attempts with 30s lockout)
  • Secure password generator
  • Cryptographic hash generation

🎨 Customization

  • 4 Built-in Themes: Default (Cyan), Matrix (Green), Hacker (Red), Ocean (Blue)
  • Command aliases support
  • Configurable settings via core/config.js

📊 System Monitoring

  • sysinfo: Comprehensive system information (CPU, RAM, GPU, Battery, Storage)
  • network: Network interfaces, IP addresses, connection statistics
  • disk: Disk usage with visual bars and physical device info
  • processes: Running processes with CPU/Memory usage (top-like view)
  • time: Date, time, timezone, and system uptime

🌐 Network Tools

  • ping: Ping hosts with statistics
  • ports: Show open ports and listening services
  • wifi: WiFi networks, signal strength, passwords, and connection details 🔐
  • dns: Complete DNS lookup (A, AAAA, MX, NS, TXT, CNAME records)

⚡ System Control (Multi-Platform)

  • power: Shutdown, restart, sleep, hibernate, lock screen
  • kill: Terminate processes by PID or name
  • Supports Windows, Linux, and macOS
  • Custom timer support (5-3600 seconds)
  • Safety confirmations for destructive actions

💻 Dev Tools

  • encode: Text encoding (Base64, URL, Hex)
  • decode: Text decoding (Base64, URL, Hex)
  • hash: Generate cryptographic hashes (MD5, SHA1, SHA256, SHA512)
  • uuid: Generate UUID v4 identifiers
  • env: View environment variables with filtering

🛠️ Productivity Tools

  • notes: Persistent note-taking system (add, list, delete, clear)
  • history: Command history tracking with timestamps
  • theme: Dynamic theme switching
  • password: Generate secure random passwords

📦 Installation

Method 1: Local Development

# Clone or download the repository
cd pratham-terminal

# Install dependencies
npm install

# Link globally
npm link

# Run the terminal
pt

Method 2: Global Package Distribution (.tgz)

# Step 1: Create package file (one time)
npm pack
# Creates: pratham-terminal-1.0.0.tgz

# Step 2: Install on any computer
npm install -g pratham-terminal-1.0.0.tgz
# Or from cloud link:
npm install -g https://your-cloud-link/pratham-terminal-1.0.0.tgz

# Step 3: Use anywhere
pt

⚠️ Self-Destruct Mode

When using on someone else's device, use the destroy command to completely remove all traces:

pt
destroy  # Clears all data, uninstalls package, removes terminal

🎯 Usage

Basic Commands

| Command | Aliases | Description | |---------|---------|-------------| | help | ? | Show all commands | | clear | cls, clr | Clear terminal screen | | exit | q, quit | Close terminal |

System Monitoring

| Command | Aliases | Description | |---------|---------|-------------| | sysinfo | sys | System & hardware stats | | network | net | Network information | | disk | - | Disk usage by drive | | processes [N] | proc, ps | Top N processes (default: 10) | | time | - | Date, time, and uptime |

Network Tools

# Ping
ping google.com           # Ping host with default 4 packets
ping 8.8.8.8 10          # Ping with 10 packets

# Port Scanner
ports                     # Show open ports and listening services

# WiFi Information & Passwords 🔐
wifi                      # Show current connection, password & available networks
wifi MyHomeNetwork        # Show password for specific saved network

# DNS Lookup
dns github.com            # Complete DNS lookup (A, AAAA, MX, NS, TXT, CNAME)

Aliases: ping (also p), dns (also lookup)

Developer Tools

# Encoding
encode base64 Hello World    # Base64 encoding
encode url https://test.com  # URL encoding
encode hex SecretText        # Hexadecimal encoding

# Decoding
decode base64 SGVsbG8=       # Base64 decoding
decode url https%3A%2F%2F    # URL decoding
decode hex 48656c6c6f        # Hex to text

# Hashing
hash password123             # SHA256 (default)
hash md5 mytext             # MD5 hash
hash sha1 mytext            # SHA1 hash
hash sha512 mytext          # SHA512 hash

# UUID Generation
uuid                         # Generate single UUID v4
uuid 5                       # Generate 5 UUIDs

# Environment Variables
env                          # Show all environment variables
env PATH                     # Show specific variable

Aliases: encode (also enc), decode (also dec), hash (also md5, sha256), uuid (also guid)

Security & System

# Password Generator
password                     # Generate 16-char password
password 24                  # Generate 24-char password
password 20 5               # Generate 5 passwords of 20 chars

# Process Termination
kill 1234                    # Kill process by PID
kill notepad                 # Kill all processes by name

# Environment Variables
env                          # List all variables (sensitive masked)
env PATH                     # Show specific variable

Aliases: password (also pass, pw), kill (also killall), env (also environment)

System Control

# Power commands
power shutdown [seconds]    # Schedule shutdown (default: 60s)
power restart [seconds]     # Schedule restart
power sleep                 # Put system to sleep
power hibernate            # Hibernate system (Windows/Linux)
power lock                 # Lock screen
power cancel               # Cancel scheduled operation

Utilities

# Notes management
notes add Remember to backup system
notes list
notes delete 1
notes clear

# History
history          # Show last 20 commands
history 50       # Show last 50 commands

# Theme
theme matrix     # Switch to Matrix theme (green)
theme hacker     # Switch to Hacker theme (red)
theme ocean      # Switch to Ocean theme (blue)
theme default    # Switch to Default theme (cyan)

⚠️ Danger Zone

# Self-Destruct Command
destroy          # Complete system cleanup and uninstall
                 # - Clears all data (notes, history)
                 # - Uninstalls terminal globally
                 # - Removes all traces from system
                 # ⚠️  CANNOT BE UNDONE!

Use Case: When using terminal on someone else's device and want to leave no traces behind.

What it does:

  1. Clears all saved data files (notes.json, history.json)
  2. Runs npm uninstall -g pratham-terminal
  3. Cleans npm cache
  4. Exits terminal
  5. Makes the pt command no longer available

⚙️ Configuration

Edit core/config.js to customize:

Security Settings

security: {
  password: process.env.PRATHAM_PASSWORD || "admin",
  maxAttempts: 3,
  lockoutTime: 30000, // 30 seconds
}

Set password via environment variable:

# Windows (PowerShell)
$env:PRATHAM_PASSWORD = "your_secure_password"

# Linux/Mac
export PRATHAM_PASSWORD="your_secure_password"

Command Aliases

aliases: {
  "?": "help",
  "cls": "clear",
  "sys": "sysinfo",
  // Add your own!
}

Theme Configuration

themes: {
  custom: {
    primary: chalk.magenta,
    secondary: chalk.blue,
    // ... customize colors
  }
}

📁 Project Structure

pratham-terminal/
├── bin/
│   └── pt.js                 # Entry point
├── core/
│   ├── config.js            # Configuration settings
│   ├── terminal.js          # Terminal loop & auth
│   └── commandHandler.js    # Command routing
├── commands/
│   ├── help.js              # Help command
│   ├── clear.js             # Clear screen
│   ├── sysinfo.js           # System information
│   ├── network.js           # Network info
│   ├── disk.js              # Disk usage
│   ├── processes.js         # Process manager
│   ├── time.js              # Time & uptime
│   ├── power.js             # Power control
│   ├── notes.js             # Note-taking
│   ├── history.js           # Command history
│   ├── theme.js             # Theme switcher
│   ├── exit.js              # Exit terminal
│   ├── destroy.js           # Self-destruct & uninstall
│   ├── ping.js              # Network ping
│   ├── ports.js             # Port scanner
│   ├── wifi.js              # WiFi info & passwords
│   ├── dns.js               # DNS lookup
│   ├── encode.js            # Text encoding
│   ├── decode.js            # Text decoding
│   ├── hash.js              # Hash generator
│   ├── uuid.js              # UUID generator
│   ├── password.js          # Password generator
│   ├── kill.js              # Process killer
│   └── env.js               # Environment variables
├── data/                     # Persistent storage
│   ├── notes.json           # Saved notes
│   └── history.json         # Command history
└── package.json

🔧 Requirements

  • Node.js >= 14.0.0
  • npm or yarn
  • Supported OS: Windows, Linux, macOS

📚 Dependencies

  • chalk: Terminal colors
  • figlet: ASCII art banner
  • readline-sync: Synchronous user input
  • systeminformation: System & hardware info
  • cli-progress: Progress bars

🤝 Contributing

Feel free to fork, modify, and enhance this terminal!

📄 License

ISC License - See LICENSE file for details

👤 Author

Pratham

🎉 Acknowledgments

Built with Node.js and a passion for clean CLI interfaces.


Happy Hacking! 🚀