bnb
v1.0.3
Published
Bnb takes care of launching your web app on your development machine.
Downloads
3
Readme
bnb
Run and serve your web apps in .dev domains on your develop machine.
This project is inspired by:
- 37 Signals' Pow (Rack, OS X only)
- typicode/hotel
Comparing to hotel, this project comes with a few extra features:
- Full-fledged / operable terminal (powered by battle-hardened node-pty and xterm.js)
- Also shipped as an Electron / GUI app (available on Linux / OS X / Windows)
- Robust state control (easily and reliably restarting app when needed)
- Proxy all network request (so you don't have to setup proxy auto-config, just use the single proxy, makes it easy for cross-projects API invocation)
- Self-signed SSL connection (with correct SAN so it produces a 'greenlock' after marking CA trusted manually)
Install
If you prefer launching and keeping it by CLI, then
npm install bnb -g
bnb server
... or if you prefer launching it as a GUI staying as a tray icon, download the latest release.
Usage
Configure your brower to use http://localhost:2999
as HTTP/HTTPS proxy. Then add your apps in http://bnb.dev/ (or in GUI), specifying the directory and the command to run your application.
Make sure they listen to the HTTP port number specified in the PORT
enviroment variable. Here are some examples commands:
ember server
jekyll server
rails server --port $PORT
python -m SimpleHTTPServer $PORT
php -S 127.0.0.1:$PORT
Then click the 🌎 button in the app details to go to its .dev
domain. bnb
will launch your app for you.
Self-signed SSL
bnb
generates a self-signed CA key-pair and stores it with other data at ~/.bnb.json
. Then it signs SSL certificate for each .dev
domain when requested. So SSL works out of box, just by going to https://my-app.dev/
. But if want to see a 'greenlock', i.e. to make your browser trust bnb
, you need to mark your self-signed CA as trusted in browser or OS.