mirror of
https://github.com/atlanticbiomedical/biomedjs.git
synced 2025-07-02 00:47:26 -04:00
116 lines
2.5 KiB
JavaScript
116 lines
2.5 KiB
JavaScript
var express = require('express');
|
|
var app = express();
|
|
var http = require('http');
|
|
var socketio = require('socket.io');
|
|
var pile = require("../../index");
|
|
var logger = {};
|
|
var share = require("./share");
|
|
|
|
console.log(share.test());
|
|
|
|
function isEmail(s) {
|
|
return !! s.match(/.\w+@\w+\.\w/);
|
|
}
|
|
|
|
var loggerConf = {
|
|
levels: {
|
|
debug: 0,
|
|
info: 1,
|
|
notice: 2,
|
|
warn: 3,
|
|
warning: 3,
|
|
error: 4,
|
|
critical: 5,
|
|
crit: 5,
|
|
alert: 6,
|
|
emerg: 7
|
|
},
|
|
colors: {
|
|
debug: 'grey',
|
|
info: 'blue',
|
|
notice: 'green',
|
|
warn: 'yellow',
|
|
warning: 'yellow',
|
|
error: 'red',
|
|
critical: 'red',
|
|
crit: 'red',
|
|
alert: 'red',
|
|
emerg: 'red'
|
|
},
|
|
transports: [
|
|
new (require('winston').transports.Console)({
|
|
colorize: true,
|
|
timestampe: true,
|
|
"level": 'debug',
|
|
"silent": false
|
|
})
|
|
]
|
|
};
|
|
|
|
var logger = new (require('winston').Logger)(loggerConf);
|
|
|
|
var srv = http.createServer(app);
|
|
|
|
// Socket.IO
|
|
var io = socketio.listen(srv,{"logger":logger});
|
|
|
|
io.configure(function(){
|
|
io.enable('browser client gzip');
|
|
io.enable('browser client minification');
|
|
io.disable('flash policy server');
|
|
});
|
|
|
|
// Piler config
|
|
var js = pile.createJSManager({ outputDirectory: __dirname + "/out", "logger":logger });
|
|
var css = pile.createCSSManager({ outputDirectory: __dirname + "/out", "logger":logger });
|
|
|
|
js.bind(app,srv);
|
|
css.bind(app,srv);
|
|
|
|
app.configure(function() {
|
|
app.set('views', __dirname + "/views");
|
|
});
|
|
|
|
app.configure("development", function() {
|
|
js.liveUpdate(css,io);
|
|
});
|
|
|
|
css.addFile(__dirname + "/style.css");
|
|
css.addFile(__dirname + "/style.styl");
|
|
css.addFile(__dirname + "/style.less");
|
|
|
|
js.addOb({MY: {
|
|
isEmail: isEmail
|
|
}
|
|
});
|
|
|
|
js.addOb({FOO: "bar"});
|
|
js.addUrl("http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js");
|
|
|
|
js.addFile(__dirname + "/client/underscore.js");
|
|
js.addFile(__dirname + "/client/backbone.js");
|
|
js.addFile(__dirname + "/client/hello.js");
|
|
js.addFile(__dirname + "/client/hello.coffee");
|
|
js.addFile("foo", __dirname + "/client/foo.coffee");
|
|
js.addFile("bar", __dirname + "/client/bar.coffee");
|
|
js.addFile(__dirname + "/share.js");
|
|
|
|
|
|
app.get("/", function(req, res){
|
|
|
|
res.exec(function() {
|
|
console.log("Run client code from the response", FOO);
|
|
console.log(share.test());
|
|
});
|
|
|
|
res.render("index.jade", {
|
|
layout: false,
|
|
js: js.renderTags("foo"),
|
|
css: css.renderTags()
|
|
});
|
|
});
|
|
|
|
srv.listen(8001, function(){
|
|
logger.notice("listening on 8001");
|
|
});
|