In this tutorial series we will look on how we can use Akka HTTP, Activate and other useful libraries to build an application completely in Scala. We will explore each component in detail explaining various techniques and approaches. The first part we will lay the foundation for our app and in the next parts we will be extending this framework.
In Scalac we believe that Scala is a great general purpose language, that helps you to build high quality software quickly. And although Scala shines in the backend, it’s use is not limited to server side programming. With these blog posts we would also like to convince all of you that it’s possible to build a full stack application using only Scala.
This, and the following blog posts from the series, are an experiment proving that the Scala ecosystem is mature enough to be the main driving force for building production ready apps. Although I would not recommend using Scala only for its hype, I want to show that it’s a viable alternative for both freelancers, startups and enterprises looking for a full stack technology.
The application that we are going to build is a simple inventory manager. It will keep some information about items and where they are located. It’s not much, but we will improve and grow the application while we introduce new libraries and approaches to the mix.
database layer - Software Transactional Memory approach with Activate Framework
API layer - brand new Akka HTTP in action
web client - done with Scala.js
mobile app - Android application created with Scaloid
You can track the progress on Inventory App
I hope this short post will get you interested in the series I’m preparing for you. The first “real” part is coming soon and next will be published every 1-2 weeks.