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! πŸŽ‰