We've finished all of the refactoring that we needed to do in order to prepare the application to be rendered on the server. We now need to look at how we configure our application to be booted on both the client and the server, as we already determined that we need to be very specific about what happens when and where. This also includes enhancing our existing webpack configuration so that it too understands how our application needs to work on both the client and server.
Let's start with how we actually boot our application. Currently, we have a single ClientApp/boot.js file, which handles this task for us nicely as we only ever boot the application on the client. However, we now need to split this file into three separate parts: app.js, client.js, and server.js. As you've probably already guessed, client.js and server.js are used...