minihost
v0.4.1
Published
dev utility
Downloads
33
Readme
minihost
When working with many dev servers, you have to increment and remember ports (e.g. http://localhost:3000, http://localhost:4000, ...).
With minihost, you don't have to think about that.
Works on Windows, Linux and OS X.
Usage
Install:
npm install -g minihost
Prefix your commands with h
:
~/one$ h -- nodemon
~/two$ h -- npm start
You can then view your running servers on http://localhost:2000
and access them locally on http://<name>*:2000
using any host that resolves to 127.0.0.1
.
For example:
# Using dnsmasq and a local .dev domain
# Or /etc/hosts
http://one.dev:2000
http://two.dev:2000
Public wildcard domain names that resolves to 127.0.0.1
are also supported and can be used without any system configuration:
# See til.io
http://one.til.io:2000
http://two.til.io:2000
# See xip.io
http://one.127.0.0.1.xip.io:2000
http://two.127.0.0.1.xip.io:2000
To set a custom name, add -n
:
~/one$ h -n app -- nodemon
To set a custom port environment variable name (instead of default PORT
), add it after colon in custom name:
~/one$ h -n app:APP_PORT -- nodemon
To enable multiple names and ports repeat -n
option:
~/one$ h -n app1:APP1_PORT -n app2:APP_PORT1 -- nodemon
If custom env variable names for ports not defined, PORT_0
, PORT_1
, ...
will be used.
To change the port minihost listens to, run:
echo 8000 > ~/.minihost
Supporting minihost
For minihost to work, your server need to listen on the PORT environment variable.
From your code:
// KO
app.listen(3000);
// OK
app.listen(process.env.PORT || 3000);
Or from the command-line:
h -- 'cmd -p $PORT' # Linux, OS X
h -- "cmd -p %PORT%" # Windows
License
MIT - Typicode