serve.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. const spawn = require('child_process').spawn
  2. const path = require('path')
  3. const fs = require('fs')
  4. const createWriteStream = require('fs-write-stream-atomic')
  5. const browserify = require('browserify')
  6. const watchify = require('watchify')
  7. const babelify = require('babelify')
  8. const port = process.env.PORT || 8080
  9. const b = browserify({
  10. cache: {},
  11. packageCache: {},
  12. debug: true,
  13. entries: path.join(__dirname, './main.js'),
  14. })
  15. b.plugin(watchify)
  16. b.transform(babelify)
  17. function bundle () {
  18. return b.bundle((err, data) => {
  19. if (err) console.error(err.stack)
  20. else console.log('bundle complete')
  21. }).pipe(createWriteStream(path.join(__dirname, './bundle.js')))
  22. }
  23. b.on('log', console.log)
  24. b.on('update', bundle)
  25. b.on('error', console.error)
  26. fs.createReadStream(path.join(__dirname, '../../packages/uppy/dist/uppy.min.css'))
  27. .pipe(fs.createWriteStream(path.join(__dirname, './uppy.min.css')))
  28. console.log('bundling...')
  29. bundle().on('finish', () => {
  30. // Start the PHP delevopment server.
  31. spawn('php', ['-S', `localhost:${port}`], {
  32. stdio: 'inherit',
  33. })
  34. })