Skip to content

Tunnelize is a command-line tool that allows you to easily forward HTTP or HTTPS requests from a remote server to a local instance. It is designed to facilitate secure, simple, and reliable tunnel connections for development environments.

Notifications You must be signed in to change notification settings

alessiobianchini/Tunnelize

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tunnelize

Tunnelize is a command-line tool that allows you to easily forward HTTP or HTTPS requests from a remote server to a local instance. It is designed to facilitate secure, simple, and reliable tunnel connections for development environments.

🚀 Features

  • WebSocket Connection: Establish a persistent connection with a remote proxy server.
  • HTTP/HTTPS Protocol: Supports tunneling for both HTTP and HTTPS requests.
  • Automatic Reconnection: If the connection is dropped, Tunnelize automatically retries.
  • Simple CLI: Intuitive command-line interface for fast setup and usage.
  • Configurable Log Levels: Dynamically adjust logging levels (debug, info, log, warn, error) for better control.
  • Persistent Log Levels: The log level persists across sessions.

📦 Installation

To install Tunnelize globally as an NPM package, run:

npm install -g tunnelize

Once installed, you can use the tunnelize command from anywhere.

🔧 Usage

To start Tunnelize, use the following command:

tunnelize <protocol> <port>

Options:

Parameter Description Default
protocol Either http or https http
port Port number to connect on localhost 8080

Examples

  1. Start a tunnel for HTTP on port 8080

    tunnelize http 8080
  2. Start a tunnel for HTTPS on port 443

    tunnelize https 443
  3. Set log level to debug

    tunnelize loglevel debug
  4. Show help information

    tunnelize help

🔐 Environment Variables

You can customize the remote proxy server URL using environment variables.

export DEV_TUNNEL_URL='your-proxy-url-here'

📘 Commands

Command Description
tunnelize http 8080 Start a tunnel using HTTP on port 8080
tunnelize https 443 Start a tunnel using HTTPS on port 443
tunnelize loglevel <level> Set the log level dynamically (debug, info, log, warn, error)
tunnelize help Show available commands and usage info

💻 Development

To contribute or develop locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/alessiobianchini/Tunnelize.git
    cd Tunnelize
  2. Install dependencies:

    npm install
  3. Link the package locally for testing:

    npm link
  4. Run the CLI locally:

    tunnelize http 8080

🤝 Contributing

Contributions are welcome! To contribute, please:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix.
  3. Submit a pull request with your changes.

🔖 License

This project is licensed under the MIT License. See the LICENSE file for more information.

📧 Contact

For questions, issues, or feature requests, feel free to open an issue on the GitHub repository or contact the project maintainer via email: [email protected]


Note: This tool is intended for development purposes only and should not be used in production environments without proper security measures.

About

Tunnelize is a command-line tool that allows you to easily forward HTTP or HTTPS requests from a remote server to a local instance. It is designed to facilitate secure, simple, and reliable tunnel connections for development environments.

Topics

Resources

Stars

Watchers

Forks

Sponsor this project

  •  

Contributors 2

  •  
  •