F# Applied II

A Practical Guide For Web Development In F# Using Suave






What you’ll learn

The objective of this book is to answer the most significant question that developers encounter while learning or working with F#.

How can I build a real-world, production-ready, end-to-end application in F# using the functional programming principles?

Immutability, Type Safety, Pattern Matching, Pure Functions and all other functional programming things sound good on paper but How can I build something useful by applying it?

This book has been created exclusively to answer these questions in a developer-friendly way!

Sounds interesting?

Let’s have a look at what we will be learning from this book.

We are going to build a clone of the Twitter application, FsTweet. Right from starting an empty directory for the application to deploying it on Azure App Service, we are going to learn step by step.

The features that will be building includes

Handling new user signups and verifying their email address

Authenticating them to access their twitter wall and profile page

Following other Twitter users

Publishing the tweets to the followers and get real-time updates.

On the technical side, we are going to learn a lot of things and to quote a few; we’ll be learning

The Application of functional programming principles in a real-world application

Server-Side Rendering in Suave using DotLiquid

Authentication and Authorisation in Suave

Application Logging using Logary

Error handling in asynchronous operations using Chessie.

Database access using SQLProvider

Database schema management using Fluent Migrator

Realtime Tweet Feeds and Notifications using GetStream.io

Overall, It’s going to be a lot of fun, and I believe it will add value in your functional programming journey in F#.

Who this book is for

This book targets "intermediate" users of F#. If you are a beginner, I recommend you to checkout the following resources to get the most out of the book

F# Workshop

Thinking Functionally

A recipe for a functional app

Introduction to F#

Build a web server based on Suave

If you are someone who is familiar with the basics of F# and wants to develop some complex applications beyond the basics, this book will be an excellent companion.