Scala libraries

Web

    ​blaze - Scala library for building asynchronous pipelines, with a focus on network IO.
    ​ZIO HTTP - Scala library to write HTTP apps. Powered by ZIO and netty and aims at being the defacto solution for writing, highly scalable and performant web applications.
    ​Http4s - Minimal, idiomatic Scala interface for HTTP services.
    ​tapir - Describe HTTP API endpoints as immutable Scala values. (Docs)
    ​sttp - Scala HTTP client you always wanted. (Docs)
    ​Scalatra - Tiny Scala high-performance, async web framework, inspired by Sinatra. (Web)

CLI

    ​decline - Composable command-line parser for Scala.

FP

DB

    ​doobie - Functional JDBC layer for Scala.
    ​ScalikeJDBC - Tidy SQL-based DB access library for Scala that naturally wraps JDBC and provides easy-to-use APIs.
    ​Skunk - Data access library for Scala + Postgres.
    ​Slick - Modern database query and access library for Scala. Allows you to work with stored data almost as if you were using Scala collections. (Web)

Test

    ​Weaver-test - Test framework that runs everything in parallel.

ML

    ​Noether - Scala Aggregators used for ML Model metrics mo.
    ​Lamp - Scala library for deep learning and scientific computing. It features a native CPU and GPU backend and operates on off-heap memory.

Other

    ​sup - Composable, purely functional healthchecks in Scala.
    ​Monocle - Optics library for Scala.
    ​Skunk - Data access library for Scala + Postgres.
    ​Scala STM - Lightweight software transactional memory for Scala, inspired by the STMs in Haskell and Clojure while taking advantage of Scala’s power and performance.
    ​Scalaz - Principled Functional Programming in Scala.
    ​ZIO - Type-safe, composable library for asynchronous and concurrent programming in Scala. (Web) (Advanced ZIO Workshop)
    ​Matryoshka - Generalized recursion schemes and traversals for Scala.
    ​Scrimage - Scala image processing library.
    ​Fastring - Extremely fast string formatting.
    ​Compute.scala - Scientific computing with N-dimensional arrays.
    ​Finatra - Fast, testable, Scala services built on TwitterServer and Finagle.
    ​Freestyle - Cohesive & pragmatic framework of FP centric Scala libraries.
    ​Deequ - Library built on top of Apache Spark for defining "unit tests for data", which measure data quality in large datasets.
    ​Izumi - Ecosystem of independent libraries and frameworks allowing you to significantly increase productivity of your Scala development.
    ​Odin - Fast & Functional logger in Scala.
    ​Monix - Asynchronous, Reactive Programming for Scala and Scala.js.
    ​Coursier - Pure Scala Artifact Fetching.
    ​almond - Scala kernel for Jupyter. (Web)
    ​Twitter Util - Bunch of idiomatic, small, general purpose tools.
    ​scalameta - Library to read, analyze, transform and generate Scala programs. (Guide)
    ​Inox - Solver for higher-order functional programs.
    ​Stainless - Verification framework and tool for higher-order Scala programs. (Web)
    ​scodec - Scala combinator library for working with binary data.
    ​circe - JSON library for Scala.
    ​Ciris - Functional Configurations for Scala.
    ​ScalaPy - Allows you to use any Python library from your Scala code with an intuitive API.
    ​Treadle - Experimental circuit simulator that executes low Firrtl IR.
    ​graalnative4s - Employ Scala for serverless applications.
    ​Cats Effect - Purely functional runtime system for Scala.
    ​NewType - Scala with no runtime overhead.
    ​Monocle - Optics library for Scala. (Docs)
    ​refined - Simple refinement types for Scala.
    ​uPickle - Simple Scala JSON and Binary (MessagePack) serialization library.
    ​LaCasa - Lightweight affine types and object capabilities in Scala.
    ​Spotted Leopards - Proof of concept for a cats-like library built using Dotty features.
    ​Izumi - Productivity-oriented collection of lightweight fancy stuff for Scala toolchain. (Docs)
    ​Libretto - Declarative concurrency and stream processing library for Scala.
    ​Algebird - Abstract Algebra for Scala.
    ​Natchez - Distributed tracing library for Scala.
    ​SWAN - Swift Static Analysis Framework.
    ​Chimney - Scala library for boilerplate-free, type-safe data transformations.
    ​banana-rdf - Library for RDF, SPARQL and Linked Data technologies in Scala.
    ​Scio - Scala API for Apache Beam and Google Cloud Dataflow.
    ​MacWire - Lightweight and Nonintrusive Scala Dependency Injection Library.
    ​Wire Signals - Small and effective event-handling library for Scala.
    ​Papa Carlo - Scala parsing library utilises incremental parsing approach.
    ​Avro4s - Avro schema generation and serialization / deserialization for Scala.
    ​Vault - Type-safe, persistent storage for values of arbitrary types.
    ​cats-retry - Library for retrying actions that can fail.
    ​Quill - Compile-time Language Integrated Queries for Scala. (Web)
    ​ZIO Optics - Easily modify parts of larger data structures.
    ​scala-typed-holes - Scala compiler plugin to emulate the "typed holes" feature of Haskell, Idris, Agda, etc.
    ​ScalaCache - Simple caching in Scala.

Links

Last modified 4d ago