Project

exposer

0.0
No commit activity in last 3 years
No release in over 3 years
Exposer is an application that allows the user to show a locally run website over the internet to other users.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.3
>= 0
>= 0

Runtime

 Project Readme

Exposer Build Status

Exposer exposes your services to the internet via a combination of smart ssh remote port forwarding and reverse nginx proxying.

What this means is that you can just spawn a service, tell exposer what port it runs on, on your local machine, and Exposer will give you an URL where your service will be accessible for the entire internet to see (or at least those who know the URL)

Installation

Install exposer:

$ gem install exposer

Usage

After you have installed exposer you can simply start it as follows:

$ exposer -p <PORT>

Where is the port you wish to expose. For example, if you are creating a ruby web application, and you do a rackup, which starts a webservice at port 9292, then you would do:

$ exposer -p 9292

You would get a response that is similar to the following:

Starting connection...
You can reach your service on http://yo9q.exposer.io

Press CTRL+C to stop the connection.

You can then just share the link that is given to you in the response. And via that link people can reach the application that you just have set up! It's almost magic!

TODO

  • Add option to define the length of the subdomain (longer if you want more privacy, shorter if you want it to be easy to remember)
  • Add posibility to choose which public key file to use to authenticate with the server
  • ...

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request