Skip to content

Latest commit

 

History

History
59 lines (45 loc) · 2.37 KB

README.md

File metadata and controls

59 lines (45 loc) · 2.37 KB

borschik-server

Build Status NPM version Dependency Status

An HTTP server to process JS and CSS files with borschik on demand.

This server is for development use only.

Default behavour

  1. If file exists, respond with the file as is
  2. Process files with _ prefix only (can be redefined in path-resolver)
  3. Minimize is disabled
  4. Freeze is disabled

Some examples:

  1. Your request is http://example.com/js/file.js. file.js exists, so borschik-server reads the file and writes it to the output as is.
  2. Your request is http://example.com/js/_file.js. file.js doesn't exist, but borschik-server removes the _ prefix, reads file file.js and processes it with borschik.

Installation

npm install -g borschik-server

Usage

Just run borschik-server and set up your webserver. If you want to use borschik-server as an init.d script, follow this template for Ubuntu

Webserver configuration

You should set up your webserver (apache, lighttpd, nginx, etc.) to proxy http requests for static files to borschik-server.

Example of nginx configuration:

location ~* "\.(css|js)$" {
    # proxy all requests for css/js to borschik-server
    # use $uri (not $request_uri) to deal with rewrite
    proxy_pass http://127.0.0.1:8055$document_root$uri;
}

How to extend with new technologies

You can create you own server with this code

require('borschik-server').server({
    port: 8055,
    techResolver: require('../lib/tech-resolver')
});

This code references your own tech-resolver. You can find an example in the unit tests. In this example we add support for a new ".styl" technology.

You can redefine pathResolver as well. In our example we define built files as file.min.js.

License

MIT