Skip to content

mehranhatami/3w

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3w

Simple express server for static file delivering.

Installation

To install it all you need is to run this on terminal:

npm install 3w -g

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

3w src --3000

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

3w src --3000 --https

When it comes to setting up a simple HTTP Server to serve a specific dir, we have different 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.

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
});

About

Simple static server with https support

Resources

License

Stars

Watchers

Forks

Packages

No packages published