Scala Server Toolkit
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.
Jump Right In
You can use the official Giter8 template to get started:
sbt new avast/sst-seed.g8
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.