####Ticket management system A ticket management system sample application.
This application demonstrates the use of slick, akka-http and cats library in a simple rest application.
The implementation of the application influenced by the material of the books:
Also consulting the documentation of the following libraries will be helpfull:
This git repository contains tags which snapshot the creation process of the project.
This is done for educational purposes.
Navigate through the tags (via git checkout) and study the code.
The available tags are:
-
step1: Initial scaffolding and base project structure. Contains algebra implementation with in memory and failing repository
-
step2: Reviewing the repository api and improving it (see
TicketServiceInterpreter.scala) -
step3: Introducing akka-http (see
logback.xml,application.conf,build.sbt) -
step4: Creating rest api interface using akka-http (see
Server.scalaandworksheets/circe.sc) -
step5: Integrating the ticket service using an in memory repository (see
Server.scala) -
step6: Introducing slick with H2Database drivers (see
slick.sc,build.sbt). -
step7: Refactoring repository and service API (see
Repository,TicketServiceInterpreter,FailingTicketRepository,InMemoryTicketRepository). -
step8: Implementing the database repository using slick (see
DbTicketRepository)
Fotios Paschos, @fpaschos, Oct 2017