mirror of
https://github.com/chanzuckerberg/cellxgene.git
synced 2026-09-15 20:57:56 +08:00
56 lines
1.2 KiB
JavaScript
56 lines
1.2 KiB
JavaScript
/* eslint-disable */
|
|
// jshint esversion: 6
|
|
var path = require("path");
|
|
var historyApiFallback = require("connect-history-api-fallback");
|
|
var chalk = require("chalk");
|
|
var express = require("express");
|
|
var favicon = require("serve-favicon");
|
|
var webpack = require("webpack");
|
|
var config = require("../configuration/webpack/webpack.config.dev");
|
|
var utils = require("./utils");
|
|
|
|
process.env.NODE_ENV = "development";
|
|
|
|
var PORT = process.env.PORT || 3000;
|
|
|
|
// Set up compiler
|
|
var compiler = webpack(config);
|
|
|
|
compiler.plugin("invalid", () => {
|
|
utils.clearConsole();
|
|
console.log("Compiling...");
|
|
});
|
|
|
|
compiler.plugin("done", stats => {
|
|
utils.formatStats(stats, PORT);
|
|
});
|
|
|
|
// Launch server
|
|
var app = express();
|
|
|
|
app.use(historyApiFallback({ verbose: false }));
|
|
|
|
app.use(
|
|
require("webpack-dev-middleware")(compiler, {
|
|
logLevel: "warn",
|
|
publicPath: config.output.publicPath
|
|
})
|
|
);
|
|
|
|
app.use(favicon("./favicon.png"));
|
|
|
|
app.get("*", (req, res) => {
|
|
res.sendFile(path.resolve("index.html"));
|
|
});
|
|
|
|
app.listen(PORT, err => {
|
|
if (err) {
|
|
console.log(err);
|
|
return;
|
|
}
|
|
|
|
utils.clearConsole();
|
|
console.log(chalk.cyan("Starting the development server..."));
|
|
console.log();
|
|
});
|