#!/usr/bin/env node import { resolve } from 'path' import parseArgs from 'minimist' import Server from '../server' import HotReloader from '../server/hot-reloader' import webpack from '../server/build/webpack' const argv = parseArgs(process.argv.slice(2), { alias: { h: 'help', p: 'port' }, boolean: ['h'], default: { p: 3000 } }) const dir = resolve(argv._[0] || '.') webpack(dir, { hotReload: true }) .then(async (compiler) => { const hotReloader = new HotReloader(compiler) const srv = new Server({ dir, dev: true, hotReloader }) await srv.start(argv.port) console.log('> Ready on http://localhost:%d', argv.port); }) .catch((err) => { console.error(err) exit(1) })