Skip to content

yanns/TPA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a49dfd9 · May 29, 2015

History

47 Commits
Jan 5, 2014
May 28, 2015
Jan 5, 2014
May 29, 2015

Repository files navigation

About this project

This project aims at showing how to structure a play application with the cake pattern.

It was used in a presentation at Ping Conf in 2014:

It was then extended for compile time dependency injection with macwire (or simple class constructors)

Structure

This frontend application uses two backend: a micro-service about players and a video streaming app

The cake pattern in progressively introduces in a frontend application, from TBA_01 to TBA_06. The final version is TBA_05_final.

The version with macwire is TBA_macwire.

How to run this application

  • start the backends:
cd backends/PlayerService/
./sbt.sh run

in another terminal:

cd backends/VideoService/
./sbt.sh run
  • start one frontend, for example the final version:
cd frontend/TBA_05_final/
sbt run
  • check the tests with:
sbt test

Further developments

Some new versions of the frontend application were added after the presentation to explore other ways to structure an application:

  • TBA_07 does not use any components nor any dependency injection. The testing is done only with component tests and is explained in a blog post.
  • TBA_macwire uses simple constructors to express dependencies and MacWire to "inject" them. It is like a dependency injection at compile time.

About

Structure a Play application with the cake pattern (and test it)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published