• Functional Programming in Scala by Paul Chiusano and Rúnar Bjarnason - While this book does not specifically cover Cats, it is a great introduction to functional programming in Scala in general and covers some of the abstractions that can be found in Cats.
  • Scala with Cats by Noel Welsh and Dave Gurnell - The aims of this book are two-fold: to introduce monads, functors, and other functional programming patterns as a way to structure program design, and to explain how these concepts are implemented in Cats.


  • herding cats by Eugene Yokota
  • Scala Exercises by 47 Degrees offers multiple online exercises to learn about the type classes and datatypes included in Cats.

Example Projects

  • Scala Pet Store Demonstrates FP techniques while maintaining approachability for people with an OO background. Uses tagless final for the core domain, and popular Typelevel libraries including Cats, Http4s, Circe and Doobie.


  • Functional Structures in Scala   by Michael Pilquist offers a series of lectures about basic functional structures.
  • Category Theory for Programmers by Bartosz Milewski is a series of category theory lectures oriented towards programmers. The sample code is in basic Haskell/C++ but the course is designed for programmers of all background to follow.
  • Easy and efficient data validation with Cats by Daniela Sfregola this talk introduces Cats, and some of its most interesting components for data validation. In particular, we’ll discuss some options to achieve efficient and expressive data validation. We will also argue that, compared to other options in the language, Cats is particularly suited for the task thanks to its easy-to-use data types and more approachable syntax.

Social network

  • @impurepics regularly tweet informative and kawaii educational pieces about Cats and FP in Scala.