Fluent Interfaces are designed to be easily readable and highly discoverable by the end users. We'll look at some examples of fluent interfaces "in the wild" like JOOQ and the Java8 Stream API, and Mockito. Fluent Interfaces make heavy use of builders, dsls and method chaining. These are all things that groovy excels at. We'll build an example fluent interface and talk about when you might want to apply this pattern.