Dev HTTP server to process JS and CSS files with borschik
This server is for development use only.
_ prefix only (can be redefined in path-resolver)Some examples:
1. You request is http://example.com/js/file.js. file.js exists, borschik-server reads this file
and writes to output as is.
2. You request is http://example.com/js/_file.js. file.js doesn't exist, borschik-server removes _ prefix,
reads file file.js and processes it with borschik.
npm install -g borschik-server
`Usage
Just run borschik-server and setup your webserver. If you want to use borschik-server as init.d script
follow this template for UbuntuWebserver configuration
You should setup your webserver (apache, lighttpd, nginx, etc.) to proxy http requests for static files to borschik-server.Example 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
`js
require('borschik-server').server({
port: 8055,
techResolver: require('../lib/tech-resolver')
});
`This code references to you own tech-resolver
`js
const ext2tech = {
'.styl': {
module: require('path').resolve(__dirname, '../processors/my-styl-processor'),
contentType: 'text/css; charset=utf-8'
}
};var borschikServerTechResolver = require('borschik-server').techResolver;
// save techResolver interface
exports = borschikServerTechResolver;
// redefine getTech method
exports.getTech = function(extension) {
var tech = ext2tech[extension];
// go to borschik-server techs
if (!tech) {
return borschikServerTechResolver.getTech(extension);
}
return tech
};
``You can redefine pathResolver as well.