Skip to content

sysgears/scala-tapir-akka-http-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tapir Akka-Http

Advanced back-end service with Tapir, Akka-Http, Quill and Macwire

Task - create service, similar to some kind of shop using Tapir with Akka-Http interpreter, Quill, Macwire and circe json.

This example contains:

  • work with database using Quill
  • Simple jwt authentication and role authorization to access some endpoints
  • sign in and sign out endpoints
  • error handling customization
  • failed decoding customization
  • request wrappers (request handling time tracker)
  • adding prometheus metrics
  • connecting swagger docs
  • set and describe http codes for error response
  • Tapir endpoints testing, including mocking security

Also example contains Quill as library which works with database, similar to Slick and Macwire, which works similar to Guice.

Note: to run this example in first time, you have to apply sql scripts from resource directory!

Stack

  • Tapir v1.0.3
  • Akka-Http
  • Quill v4.2.0
  • Circe json 0.14.2
  • Macwire v2.5.7
  • Scalatest, Mockito (testing)

Useful links

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages