# [![limerun](./limerun.png)](http://limerun.com) lime-static

[![Build Status](https://api.shippable.com/projects/54e7af9f5ab6cc13528d31ed/badge?branchName=master)](https://app.shippable.com/projects/54e7af9f5ab6cc13528d31ed/builds/latest) 
[![NPM](https://img.shields.io/badge/owin--js-certified-99cc33.svg?style=flat-square)](http://owinjs.org)
[![NPM](https://img.shields.io/badge/limerun-middleware-3399cc.svg?style=flat-square)](https://nodei.co/npm/limerun/)
[![NPM](https://img.shields.io/badge/owin--d-connected-C3C3E5.svg?style=flat-square)](https://owind.org/)

[![NPM](https://nodei.co/npm/lime-static.png?downloads=true)](https://nodei.co/npm/lime-static/)

## About

This is a simple static file router for [OWIN-JS](http://owinjs.org) REST framework for the `limerun` project

## Installation

```js
$ npm install lime-static
```

## Usage
```js
var static = require('lime-static');
app.use(static(filePath, options));
```

## Options

 - `maxage` Browser cache max-age in milliseconds. defaults to 0
 - `hidden` Allow transfer of hidden files. defaults to false
 - `index` Default file name, defaults to 'index.html'
 - `defer` If true, serves after `yield next`, allowing any downstream middleware to respond first
 - `sync` If true uses node fs synchronous calls, if false uses asynchronous

## Example

``` js
// Dependencies
const lime = require('limerun')
    , static = require('lime-static')
    , http = require('http');

// Create Factories
var app = new lime.app();

// App
app.use(static('.'));
http.createServer(app.buildHttp()).listen(8000);
``` 

## Example with mount location
```js

// Dependencies
const lime = require('limerun')
    , static = require('lime-static')
    , http = require('http');

// Create Factories
var app = new lime.app();

// Mount app to map URL /bootstrap to file system directory \lib\vendor\bootstrap
app.mount('/bootstrap', function(applet){
    applet.use(static('./lib/vendor/bootstrap', {sync:true}));
});

// Run app using standard owinJS host 
http.createServer(app.buildHttp()).listen(8000);
``` 

## License

  Apache 2.0
