Skip to main content

✅ VibeTunnel npm Package - Ready to Publish

The standalone VibeTunnel server is now fully prepared for npm publishing!

What’s Been Prepared

📦 Package Configuration (package.npm.json)

  • Package name: vibetunnel (unscoped package)
  • Version: 1.0.0-beta.16 (ready to increment)
  • Entry point: lib/cli.js
  • Binary: vibetunnel command
  • Keywords: Added relevant keywords for discoverability
  • Files: Configured to include only necessary files

🚀 New Features for Standalone Mode

  1. Ngrok Integration
    • NgrokService class for tunnel management
    • CLI flags: --ngrok, --ngrok-auth, --ngrok-domain, --ngrok-region
    • Automatic binary detection
    • Proper cleanup on shutdown
  2. Enhanced CLI
    • Works with npx vibetunnel out of the box
    • All server configuration options preserved
    • Help text with examples
  3. Docker Support
    • Dockerfile.standalone for containerized deployment
    • Includes ngrok in the image
    • Ready for Kubernetes/Docker Compose

📚 Documentation

  • README.npm.md: Optimized README for npm listing
  • README.standalone.md: Comprehensive standalone usage guide
  • PUBLISHING.md: Step-by-step publishing instructions
  • Dockerfile.standalone: Docker deployment

🛠️ Build System

  • Updated build-npm.js to copy all necessary files
  • Handles README files appropriately
  • Creates proper npm package structure

Quick Publishing Steps

# 1. Build the package
cd web/
pnpm run build:npm

# 2. Test locally
cd dist-npm/
npm pack
npm install -g vibetunnel-*.tgz
vibetunnel --version
npm uninstall -g vibetunnel

# 3. Publish
npm login  # If not logged in
npm publish

Testing Commands

After publishing, users can:
# Quick start - no installation
npx vibetunnel --no-auth

# With ngrok tunnel
npx vibetunnel --no-auth --ngrok

# Docker
docker run -p 4020:4020 vibetunnel --no-auth --ngrok

Key Benefits for Users

  1. Zero Installation - Works instantly with npx
  2. Remote Access - Built-in ngrok support
  3. Docker Ready - Includes Dockerfile
  4. Cross-Platform - Works on Linux, macOS, WSL
  5. Flexible Auth - From no-auth demos to SSH keys
  6. Production Ready - Proper security options

Version Note

Currently at 1.0.0-beta.16. When ready for stable release, bump to 1.0.0.

Repository Owner Action Items

  1. ✅ Review package.npm.json configuration
  2. ✅ Test the build locally with pnpm run build:npm
  3. ✅ Decide on versioning (keep beta or go to 1.0.0)
  4. ✅ Run npm publish when ready
  5. ✅ Consider setting up GitHub Actions for automated publishing

Support Files

All necessary files are in place:
  • /web/package.npm.json - npm package configuration
  • /web/README.npm.md - npm README
  • /web/README.standalone.md - Usage documentation
  • /web/Dockerfile.standalone - Docker support
  • /web/PUBLISHING.md - Publishing guide
  • /web/.npmignore.standalone - Files to exclude
  • /web/src/server/services/ngrok-service.ts - Ngrok integration
The package is ready to publish! 🎉