Play authentication and authorization with Silhouette + rate limiting

This blog and sample app demonstrates how to implement authentication and authorization using Silhouette library v4 and MongoDB for persistence.

Scala and Play Framework service and controller testing with Mockito

Mockito is a mocking framework that we found to be the most suitable for our application service and controller tests. It provided us with clean and simple API and enabled us to write very readble tests with clean verification errors.

Play framework 2.4.x with FLYWAY 4.0

Flyway is an open-source database migration tool. And as they say in flyway documentation „it strongly favors simplicity and convention over configuration“.

Play framework and Slick

Play is a popular web framework for Scala and Java. One of the modules that this framework provides is PlaySlick module which integrates Slick into Play’s application lifecycle. Play also provides its way for tracking database migrations/evolutions called Evolutions, which we won’t use this time. In this example we will use Play version 2.4.