0.0.4 • Published 9 years ago

3w v0.0.4

Weekly downloads
36
License
MIT
Repository
github
Last release
9 years ago

#3w

Simple express server for static file delivering. When it comes to setting up a simple Http server to expose a specific dir, we have bunch of options. One of the usual way of doing that which has a tone of restrictions, is using python like:

python -m SimpleHTTPServer 8080

which allows me to expose the current dir as a http server on the specific port number. I created 3w as an alternative with bunch of advanced features. Being able to set up http proxies is one of the useful features which saves a lot of pain when developing a web application. Http proxies are not provided in the current version but they will be soon with a nice and useful way of setting up the configuration.

##Installation 3w is now on npm, to install it all you need is to run this on terminal:

npm install 3w

Now to run a server and expose a directory (let's say its name is src) all you should do is:

node node_modules/3w/3w.js src --3000

To enable https you could also pass --https which usually needs you to have sudo access on the machine:

sudo node node_modules/3w/3w.js src --3000 --https

##API You could also require 3w as a module, and set up the server like:

var www = require('3w'),
  app;

app = www({
  enableHTTPS: true,
  port: 8888,
  dir: 'src'
});

or:

//This will expose the 'app' folder and 'enableHTTPS' will be false
app = www({
  port: 8888
});

or:

//This will expose the 'src' folder on '9000' and 'enableHTTPS' will be false
app = www({
  dir: 'src'
});

or:

//This will expose the 'app' folder on '9000' and 'enableHTTPS' will be false
app = www();

Using 3w you could also tweak the app object to set up your http-proxies like:

var www = require('3w'),
  app;

function proxy(app){
  //...
}

app = www({
  enableHTTPS: true,
  port: 8888,
  dir: 'src',
  proxy: proxy
});