All Projects → avast → Scala Server Toolkit

avast / Scala Server Toolkit

Licence: mit
Functional programming toolkit for building server applications in Scala.

Programming Languages

scala
5932 projects

Projects that are alternatives of or similar to Scala Server Toolkit

Ramda Adjunct
Ramda Adjunct is the most popular and most comprehensive set of functional utilities for use with Ramda, providing a variety of useful, well tested functions with excellent documentation.
Stars: ✭ 550 (+223.53%)
Mutual labels:  toolkit, functional-programming
Paperplane
Lighter-than-air node.js server framework
Stars: ✭ 95 (-44.12%)
Mutual labels:  server, functional-programming
Imageserver
Image server toolkit in Go
Stars: ✭ 1,944 (+1043.53%)
Mutual labels:  toolkit, server
Gluegun
A delightful toolkit for building TypeScript-powered command-line apps.
Stars: ✭ 2,183 (+1184.12%)
Mutual labels:  toolkit
Simplenet
An easy-to-use, event-driven, asynchronous network application framework compiled with Java 11.
Stars: ✭ 164 (-3.53%)
Mutual labels:  server
Deal
Design by contract for Python with static checker and tests' generation.
Stars: ✭ 164 (-3.53%)
Mutual labels:  functional-programming
Graphql Toolkit
A set of utils for faster development of GraphQL tools
Stars: ✭ 169 (-0.59%)
Mutual labels:  toolkit
Turnstile
An authentication framework for Swift.
Stars: ✭ 163 (-4.12%)
Mutual labels:  server
Socketio
Socket.IO Java Server based on Netty. was created to meet gaming performance requirements. battle tested and in use by Playtech Microservices API Gateway.
Stars: ✭ 166 (-2.35%)
Mutual labels:  server
Bow Arch
🏛 Functional Architecture in Swift using Bow
Stars: ✭ 166 (-2.35%)
Mutual labels:  functional-programming
Nyaya
Random Data Generation and/or Property Testing in Scala & Scala.JS.
Stars: ✭ 165 (-2.94%)
Mutual labels:  functional-programming
Unity Fastpacedmultiplayer
Features a Networking Framework to be used on top of Unity Networking, in order to implement an Authoritative Server with Lag Compensation, Client-Side Prediction/Server Reconciliation and Entity Interpolation
Stars: ✭ 162 (-4.71%)
Mutual labels:  server
Mostly Adequate Guide Chinese
函数式编程指北中文版
Stars: ✭ 2,093 (+1131.18%)
Mutual labels:  functional-programming
Newbe.claptrap
This is a frameworks with reactive, event sourcing and Actor pattern as basic theories. On top of this, developers can create "distributed", "scale out", and "easy to test" application more simply. Claptrap and it`s Minions is on the way.
Stars: ✭ 163 (-4.12%)
Mutual labels:  server
Probequest
Toolkit for Playing with Wi-Fi Probe Requests
Stars: ✭ 167 (-1.76%)
Mutual labels:  toolkit
Falcon
A high-performance web server for Ruby, supporting HTTP/1, HTTP/2 and TLS.
Stars: ✭ 2,058 (+1110.59%)
Mutual labels:  server
Libf
C++ as a Pure Functional Programming Language
Stars: ✭ 167 (-1.76%)
Mutual labels:  functional-programming
Fpgo
Monad, Functional Programming features for Golang
Stars: ✭ 165 (-2.94%)
Mutual labels:  functional-programming
Lear
Linux Engine for Asset Retrieval - speed-profiled C HTTP server
Stars: ✭ 165 (-2.94%)
Mutual labels:  server
Pknx
Pokémon (Nintendo Switch) ROM Editor & Randomizer
Stars: ✭ 165 (-2.94%)
Mutual labels:  toolkit

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.

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].