Sources, Sinks and FlowGraphs
The Akka team has been hard at work on a new version of Akka streams, and this has resulted in some pretty big changes to the API. As a result, it is now well over 80% more awesome (as measured by the Standard Awesomeness Factor metric). However, some of the API changes have naturally made some of the existing examples and documentation out there a bit stale.
Right now the API is at version 0.9, with more improvements planned for 0.10 which will affect the examples again. Rather than wait, we have decided to start tracking the changes, starting with 0.9, in the activator akka-stream-scala template. 0.9 is available for experimentation today, and we will keep the template up to date with new releases (perhaps a few days behind the release, but close).
The template has four examples, each of which demonstrates a different aspect of Akka streams, including the automatic back pressure handling in WritePrimes, and grouping/demultiplexing in GroupLogFile. In addition, WritePrimes shows off the new FlowGraph flow construction to demonstrate how a non-linear flow can be constructed - in this case it's just a fork of the flow, but FlowGraph can also merge streams back together as well.
The template is not the only resource available to start getting used to the new API though. While some of the documentation around is stale, the Scaladoc has been kept nicely up to date with the changes. The new API is under the package akka.stream.scaladsl2 so check out the scaladoc there!