A few tips on getting the most out of E2E testing tool Cypress
A functor hides some piece of common imperative code (and makes it composable)
How exchanging a set of streams solves component communication.
How to send additional context for crashes that happen during E2E tests.
Imperative If/Else example implemented using Either monads and reactive style.