Simple project to quickly start developing a Scala-based microservice or web application.
When picking Bootzooka’s technology stack we wanted to use modern, but reasonably proven technologies. So while you won’t find the latest, hottest frameworks here, you also won’t see any JSPs or <marquee> tags. The components are easy to replace, so if you’d like to experiment with a new library, this should be a matter of replacing only a small part of Bootzooka. Also, we try to update the stack once in a while, so that it’s up-to-date with current developments and trends.
Bootzooka’s stack consists of the following technologies/tools:
A lot of the projects that we develop at SoftwareMill are written in Scala. It’s our default go-to language for the server-side. We maintain or sponsor a number of open-source Scala projects. We are partners of Lightbend, Datastax and Confluent.
React is one of the most popular JavaScript framework right now, developed and supported by Facebook; we use it frequently at SoftwareMill (also because it’s really good). It offers a complete solution to build dynamic and modern HTML5 based web applications, with a “functional” approach.
Cats Effect is a toolkit for working with side-effects in pure and type-safe way. The basic datatype, IO
, is a lazily evaluated description of side effects. It offers a number of combinators to sequence, handle errors, allocate resources and run effects asynchronously.
http4s is a popular lightweight, functional library for exposing HTTP servers. tapir on the other hand, defines a programmer-friendly API for describing HTTP endpoints which can be interpreted as a server (using http4s as the backing implementation), or as Swagger/OpenAPI documentation.
To put it simply, SBT is the build tool of choice for Scala, Webpack - for JavaScript.