serve.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. const path = require('path')
  2. const fs = require('fs')
  3. const http = require('http')
  4. const ecstatic = require('ecstatic')
  5. const createWriteStream = require('fs-write-stream-atomic')
  6. const browserify = require('browserify')
  7. const watchify = require('watchify')
  8. const aliasify = require('aliasify')
  9. const babelify = require('babelify')
  10. const port = process.env.PORT || 8080
  11. const b = browserify({
  12. cache: {},
  13. packageCache: {},
  14. debug: true,
  15. entries: path.join(__dirname, './main.js')
  16. })
  17. b.plugin(watchify)
  18. b.transform(babelify)
  19. b.transform(aliasify, {
  20. global: true,
  21. replacements: {
  22. '^uppy/lib/(.*?)$': path.join(__dirname, '../../src/$1'),
  23. '^react$': require.resolve('react'),
  24. '^react-dom$': require.resolve('react-dom')
  25. }
  26. })
  27. function bundle () {
  28. return b.bundle()
  29. .pipe(createWriteStream(path.join(__dirname, './bundle.js')))
  30. }
  31. b.on('log', console.log)
  32. b.on('update', bundle)
  33. b.on('error', console.error)
  34. bundle()
  35. fs.createReadStream(path.join(__dirname, '../../dist/uppy.min.css'))
  36. .pipe(fs.createWriteStream(path.join(__dirname, './uppy.min.css')))
  37. const server = http.createServer(ecstatic({ root: __dirname }))
  38. server.listen(port, () => {
  39. console.log(`Listening on port ${port}`)
  40. })