serve.js 1.2 KB

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