1 | const chalk = require('chalk')
|
2 | const emoji = require('node-emoji')
|
3 | const serve = require('webpack-serve')
|
4 |
|
5 | const getWebpackConfig = require('../utils/getWebpackConfig')
|
6 | const createWebpackCompiler = require('../utils/createWebpackCompiler')
|
7 |
|
8 | module.exports = options => {
|
9 | process.env.GNOLL_ENTRY = options.entry
|
10 | process.env.GNOLL_TARGET = 'web'
|
11 | process.env.GNOLL_ENV = 'browser'
|
12 | process.env.GNOLL_DEVSERVER = 1
|
13 |
|
14 | const { serve: serveConfig, ...webpackConfig } = getWebpackConfig(options)
|
15 |
|
16 | const port = (serveConfig && serveConfig.port) || 3000
|
17 | const host = (serveConfig && serveConfig.host) || '0.0.0.0'
|
18 |
|
19 | console.log(emoji.get('rocket'), ' Starting the development server...')
|
20 | console.log(`The app is running at http://${host}:${port}/\n`)
|
21 |
|
22 | const compiler = createWebpackCompiler(webpackConfig)
|
23 |
|
24 | let start
|
25 |
|
26 | serve(
|
27 | {},
|
28 | {
|
29 | ...serveConfig,
|
30 | host,
|
31 | port,
|
32 | compiler,
|
33 | hotClient: { logLevel: 'silent' },
|
34 | devMiddleware: { logLevel: 'silent' },
|
35 | logLevel: 'silent'
|
36 | }
|
37 | )
|
38 | }
|