const path = require('path'); const express = require('express'); const fs = require('fs'); const bodyParser = require('body-parser'); const frontendDir = path.resolve(__dirname, 'dist'); const app = express(); app.set('port', (process.env.PORT || 3000)); fs.stat(frontendDir, (err) => { if (!err) { console.log(`Serving static build from ${frontendDir}`); console.log('Run `npm run clean` to return to development mode'); app.use('/', express.static(frontendDir)); } else { console.log('Serving development build with nwb middleware'); console.log('Run `npm run build` to create a production build'); // eslint-disable-next-line import/no-extraneous-dependencies app.use(require('nwb/express')(express, { entry: 'src/index.jsx', reload: true, })); } }); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: true })); app.listen(app.get('port'), () => { console.log(`Server started: http://localhost:${app.get('port')}/`); });