Before we start using Vapor, let's see how the Vapor package is built on top of its engine package. This will give us a better understanding of what, exactly, Vapor provides, and what is provided by the dependencies that it consumes, in case you need to build a lightweight server or want to embrace building your own variation of a web framework. We will do the following:
- First, build a basic web server that returns Hello World
- Then, modify our Hello World server to serve file content, making a static file server similar to Apache or Nginx
- Lastly, we will build a web socket server that will accept connections and echo back the message sent via the web socket connection
Going through the exercise of building these different kinds of servers using Vapor's engine will help us understand how Vapor works under the hood. It will...