Skip to content
Functional programming toolkit for building server applications in Scala.
Scala
Branch: master
Clone or download
Latest commit 4d93748 Jan 25, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE
bundle-monix-http4s-blaze/src/main/scala/com/avast/sst/bundle
bundle-zio-http4s-blaze/src/main/scala/com/avast/sst/bundle
cassandra-datastax-driver-pureconfig/src/main/scala/com/avast/sst/datastax/pureconfig
cassandra-datastax-driver/src/main/scala/com/avast/sst/datastax
docs
doobie-hikari-pureconfig/src/main/scala/com/avast/sst/doobie/pureconfig
doobie-hikari/src/main/scala/com/avast/sst/doobie
example
flyway-pureconfig/src/main/scala/com/avast/sst/flyway/pureconfig
flyway/src/main/scala/com/avast/sst/flyway
grpc-server-pureconfig/src/main/scala/com/avast/sst/grpc/server/pureconfig
grpc-server/src/main/scala/com/avast/sst/grpc/server
http4s-client-blaze-pureconfig/src/main/scala/com/avast/sst/http4s/client/pureconfig
http4s-client-blaze/src
http4s-client-monix-catnap/src/main/scala/com/avast/sst/http4s/client/monix/catnap
http4s-server-blaze-pureconfig/src/main/scala/com/avast/sst/http4s/server/pureconfig
http4s-server-blaze/src
http4s-server-micrometer/src
http4s-server/src
jvm-micrometer/src/main/scala/com/avast/sst/jvm/micrometer
jvm-pureconfig/src/main/scala/com/avast/sst/jvm/pureconfig
jvm/src
micrometer-jmx-pureconfig/src/main/scala/com/avast/sst/micrometer/jmx/pureconfig
micrometer-jmx/src/main/scala/com/avast/sst/micrometer/jmx
micrometer-statsd-pureconfig/src/main/scala/com/avast/sst/micrometer/statsd/pureconfig
micrometer-statsd/src/main/scala/com/avast/sst/micrometer/statsd
monix-catnap-micrometer/src/main/scala/com/avast/sst/monix/catnap/micrometer
monix-catnap-pureconfig/src/main/scala/com/avast/sst/monix/catnap/pureconfig
monix-catnap/src/main/scala/com/avast/sst/monix/catnap
project
pureconfig/src
ssl-config/src
.gitignore
.mergify.yml
.scala-steward.conf
.scalafix.conf
.scalafmt.conf
.travis.yml
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
build.sbt

README.md

Scala Server Toolkit

Build Status Maven Central Scala Steward badge Mergify badge

This project is a culmination of years of Scala development at Avast and tries to represent the best practices of Scala server development we have gained together with tools that allow us to be effective. It is a set of small, flexible and cohesive building blocks that fit together well and allow you to build reliable server applications.

Documentation

Read it here or you can deep dive into example code.

Articles

Talks

Design

There are certain design decisions and constraints that are put in place to guide the development of the toolkit and recommended for the development of your server applications.

  • Keep the number of dependencies as low as possible.
  • Modular design: small, cohesive, orthogonal and composable components.
  • Functional programming.
  • Type safe configuration and resource lifecycle.
  • No need for dependency injection.
  • Scalazzi Safe Scala Subset

Issues

Please report issues to GitHub. Pull requests are always welcome.

Versioning

The project follows the semantic versioning schema which means that just by looking at the version you will know whether to expect compatibility problems or not.

The project values backwards compatibility but it cannot prevent innovation. There will be breaking changes but they will always be properly versioned and documented.

Contributing

See CONTRIBUTING.md.

Code of Conduct

See CODE_OF_CONDUCT.md.

License

Scala Server Toolkit is licensed under MIT License.

You can’t perform that action at this time.