My little sandbox for playing around with http4s, doobie, docker, testing, etc.
Explores:
- Using http4s with cats-effect
- Using doobie with cats-effect
- Pureconfig for loading configuration
- Flyway for handling migrations
- Docker testkit for bringing up Docker containers on a per-test-suite basis
- sbt-native-packager for bundling the app into a Docker image
- sbt-docker-compose for bringing up a docker-compose environment based on the main project and a docker-compose.yml file
- Can run the whole project from sbt via
sbt dockerComposeUp
(stopped viadockerComposeStop
) - Also used for running Integration tests from a separate subproject
- Can run the whole project from sbt via
- Swagger API spec w/ UI via Webjar
Docker is essential to having fun here, so go download it if you don't have it installed
sbt dockerComposeUp
and go to the root in your browser (e.g. localhost).
sbt test
will run normal testssbt dockerComposeTest
will run integration testssbt dockerComposeUp
will start a docker-compose environment that includes the web-server and dependencies.
Help me learn ! Submit issues and PRs :)