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

ghost-23

v0.1.1

Published

Ghost VPN tactical HUD CLI wrapper for OpenVPN connections.

Readme

👻💀 Ghost VPN - Tactical HUD Interface

Military-grade terminal interface for your OpenVPN connection. Inspired by Fast & Furious, Mission Impossible, and tactical military displays.

Version License

✨ Features

  • 🎬 Cinematic Animations: Movie-style scanning effects and typewriter animations
  • 🗺️ Live Geolocation: Real-time location data with ASCII world map
  • 📊 Status Dashboard: Full tactical panel with connection metrics
  • 🔒 Military-Grade Display: Box-drawing characters and tactical styling
  • 🔔 Sound Alerts: Terminal bell for critical events
  • ⚡ Fast & Responsive: Optimized for real-time updates

📦 Installation

npm (recommended)

npm install -g ghost-23
mkdir -p ~/.config/ghost
cp /path/to/ghost.ovpn ~/.config/ghost/ghost.ovpn
cp /path/to/auth.txt ~/.config/ghost/auth.txt  # user on line 1, pass on line 2

Run it:

ghost connect         # or simply `ghost`
ghost status          # tactical HUD readout
ghost kill            # extraction protocol

Flags:

ghost connect --config /path/to/ghost.ovpn --auth /path/to/auth.txt --no-sudo
ghost status --root /custom/location/of/scripts

Environment overrides: GHOST_ROOT, GHOST_OVPN_CONFIG, GHOST_AUTH_FILE, GHOST_OPENVPN_BIN, GHOST_USE_SUDO=false.

Manual install (legacy)

# Clone or download Ghost VPN to ~/vpn/ghost
cd ~/vpn/ghost

# Run installer
chmod +x install.sh
./install.sh

# Reload your shell
source ~/.zshrc  # or source ~/.bashrc

Requirements

  • macOS or Linux (tested on macOS 14+; use --openvpn to point to a custom binary)
  • OpenVPN (brew install openvpn or distro packages)
  • curl
  • jq
  • Your VPN config file (ghost.ovpn preferred; ghost_💀.ovpn still supported)

🎮 Usage

Connect to VPN

ghost connect

Launches the tactical connection sequence with cinematic animations.

Check Status

ghost status

Displays full tactical status panel with:

  • Connection status
  • Geolocation (city, coordinates)
  • IP addresses (public & tunnel)
  • Encryption details
  • Latency metrics
  • ASCII world map
  • Uptime information

Disconnect

ghost kill

Executes extraction protocol with secure channel closure.

🎨 Visual Style

The interface uses:

  • Colors: Green (active), Cyan (info), Red (danger), Yellow (warning)
  • Box Drawing: Unicode characters for clean borders
  • Progress Bars: Animated scanning sequences
  • Military Time: 24-hour UTC timestamps
  • ASCII Art: Ghost logo and world map

📁 File Structure

ghost-23/
├── package.json               # npm metadata & bin mapping
├── bin/ghost.js               # Node CLI wrapper
├── ghost-hud.sh               # Core HUD functions
├── ghost-connect.sh           # Connection command
├── ghost-status-display.sh    # Status dashboard
├── ghost-kill-display.sh      # Disconnection protocol
├── ascii-art/
│   └── ghost-logo.txt         # ASCII Ghost logo
└── README.md                  # This file

⚙️ Configuration

VPN Server Settings

  • Server: 136.110.57.23:1194
  • Protocol: UDP
  • Encryption: AES-256-GCM
  • Authentication: SHA-256
  • Location: Asia Southeast (Singapore)

Animation Speed

Default: 0.03s per character (cinematic mode)

Edit ghost-hud.sh to change:

CHAR_DELAY=0.03  # Adjust for faster/slower animations

Sound Effects

Minimal mode enabled (connection events only)

Disable all sounds by removing alert_sound calls in scripts.

🔧 Troubleshooting

VPN Won't Connect

# Check OpenVPN logs
tail -f /tmp/ghost_vpn.log

# Verify config file exists
ls ~/.config/ghost/ghost.ovpn

# Test OpenVPN manually
sudo openvpn --config ~/.config/ghost/ghost.ovpn

Commands Not Found

# Reload shell configuration
source ~/.zshrc  # or ~/.bashrc

# Verify installation
which ghost

Geolocation Not Working

The interface uses free APIs (ipapi.co) with rate limits. If geolocation fails:

  • Data is cached for 1 hour in /tmp/ghost_geo_cache.json
  • Falls back to "Unknown" if API is unavailable
  • No API key required

🚀 Advanced

  • Custom VPN Server: update the server IP in ghost-connect.sh and ghost-status-display.sh.
  • Override paths: set GHOST_OVPN_CONFIG, GHOST_AUTH_FILE, or --config/--auth flags.
  • Run without sudo: GHOST_USE_SUDO=false ghost connect (for root shells/containers).

🚢 Publish to npm

  1. npm login
  2. npm version patch (or minor/major)
  3. npm publish --access public
  4. Verify: npm info ghost-23 then npm i -g ghost-23 on a fresh machine.

📝 License

Private Use Only

This is a personal VPN configuration interface. Do not redistribute without permission.

🎯 Credits

Created for personal use. Inspired by:

  • Fast & Furious franchise (tactical displays)
  • Mission Impossible series (field operations UI)
  • Military command center interfaces

Ghost VPN Tactical HUD v1.0 | Built with ❤️ and 💀

Setup Info (GCP Backend)

  • Instance: instance-20251125-223017
  • Zone: asia-southeast1-b
  • Project: goodhive-1706112296263
  • Firewall: allow-openvpn (UDP 1194)
  • Cost: ~$3.65/month (static IP)