https://github.com/typicode/minihost
Easily start and access servers
https://github.com/typicode/minihost
Last synced: 9 months ago
JSON representation
Easily start and access servers
- Host: GitHub
- URL: https://github.com/typicode/minihost
- Owner: typicode
- License: mit
- Created: 2015-02-19T00:28:51.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2017-06-20T23:58:40.000Z (over 8 years ago)
- Last Synced: 2024-12-20T00:10:54.408Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 72.3 KB
- Stars: 46
- Watchers: 5
- Forks: 10
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# minihost [](https://travis-ci.org/typicode/minihost) [](http://badge.fury.io/js/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`:
```bash
~/one$ h -- nodemon
~/two$ h -- npm start
```
You can then __view your running servers__ on `http://localhost:2000` and __access them locally__ on `http://*:2000` using any host that resolves to `127.0.0.1`.
For example:
```bash
# 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:
```bash
# 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`:
```bash
~/one$ h -n app -- nodemon
```
To set a custom port environment variable name (instead of default `PORT`), add it after colon in custom name:
```bash
~/one$ h -n app:APP_PORT -- nodemon
```
To enable multiple names and ports repeat `-n` option:
```bash
~/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:
```bash
echo 8000 > ~/.minihost
```
## Supporting minihost
For minihost to work, your server need to listen on the PORT environment variable.
From your code:
```javascript
// KO
app.listen(3000);
// OK
app.listen(process.env.PORT || 3000);
```
Or from the command-line:
```bash
h -- 'cmd -p $PORT' # Linux, OS X
h -- "cmd -p %PORT%" # Windows
```
## License
MIT - [Typicode](https://github.com/typicode)