create-nuxt-app
Version:
Create a Nuxt.js App in seconds.
40 lines (32 loc) • 922 B
JavaScript
const micro = require('micro')
const consola = require('consola')
const dispatch = require('micro-route/dispatch')
const { Nuxt, Builder } = require('nuxt<% if (edge) { %>-edge<% } %>')
async function start() {
// Require nuxt config
const config = require('../nuxt.config.js')
// Create a new nuxt instance
const nuxt = new Nuxt(config)
// Enable live build & reloading on dev
if (nuxt.options.dev) {
await new Builder(nuxt).build()
} else {
await nuxt.ready()
}
const server = micro(async (req, res) => {
await dispatch().dispatch('*', ['GET'], (req, res) =>
nuxt.render(req, res)
)(req, res)
})
const {
host = process.env.HOST || '127.0.0.1',
port = process.env.PORT || 3000
} = nuxt.options.server
// Listen the server
server.listen(port, host)
consola.ready({
message: `Server listening on http://${host}:${port}`,
badge: true
})
}
start()