Suave
While ASP.NET Web API is very convenient, you can see it is mainly designed for an object-oriented programming (OOP) language as we will map our HTTP routes and verb using classes and methods. This makes it a bit more difficult to create reusable components using simple functions as it is common in F#.
Suave (https://suave.io) is a web server that is very popular within the F# community and is specifically designed to take full advantage of the F# features. Suave is a lightweight, non-blocking web server. The non-blocking I/O model is efficient and suitable to build fast and scalable network applications.
The following is a brief list of advantages of using Suave:
- It is asynchronous by default
- Its routes are built using composable functions
- It includes common tools for web development--HTTPS, authentication, keep-alive, and compression
- It is cross-platform, which means it works on Linux, OS X, and Windows
- It can be embedded in other applications
- It can be used from an F# script
Unlike desktop...