# Use webpack-dev-middleware along with html-webpack-plugin in dev mode, HMR enabled


webapck

Webpack-dev-server is sweet, but when you have some routes in your back end and have to handle them with other logic instead just redirect them to your spa, webpack-dev-middleware may be one of your options.

We can use webpack-dev-middleware along with express, but here is one problem. Except routes mentioned above, you still need to respond remaining requests with your index page, especially when html-webpack-plugin is involved, because when we enabled HMR, the compiled index page only exists in memory, we don’t know it’s precise location.

So here is the solution:
[**HtmlWebpackPlugin + webpack-dev-middleware other pathname than / · Issue #145 ·…**
*Hello, First, thank you for your wonderful work! Second ,) My issue, I tried to use HtmlWebpackPlugin with dev server…*github.com](https://github.com/jantimon/html-webpack-plugin/issues/145#issuecomment-312911903)

```javascript
var express = require('express');
var app = express();
var webpack = require('webpack');
var path = require('path');

var compiler = webpack(require('./webpack.config.js'));

var devMiddleware = require('webpack-dev-middleware');

app.use(devMiddleware(compiler, {
  noInfo: true,
  publicPath: '/'
}));

app.use('*', function (req, res, next) {
  var filename = path.join(compiler.outputPath,'index.html');
  devMiddleware.waitUntilValid(() => {
    compiler.outputFileSystem.readFile(filename, function(err, result){
      if (err) {
        return next(err);
      }
      res.set('content-type','text/html');
      res.send(result);
      res.end();
    });
  });
});

app.listen(3000);
```
