Skip to content

A community driven list of useful Scala libraries, frameworks and software. With repository stars⭐ and forks🍴

License

Notifications You must be signed in to change notification settings

Correia-jpv/fucking-awesome-scala

Repository files navigation

Awesome Scala Awesome

A community driven list of useful Scala libraries, frameworks and software. This is not a catalog of all the libraries, just a starting point for your explorations. Inspired by 220475⭐  24831🍴 awesome-python). Other amazingly awesome lists can be found in the  31707⭐   3548🍴 awesome-awesomeness) list.

Also awesome is 🌎 Scaladex, the searchable, tagged, and centralized index of Scala libraries.

Projects with over 500 stargazers are in bold.

Contributing

Your contributions are always welcome! Please submit a pull request or create an issue to add a new framework, library or software to the list. Do not submit a project that hasn’t been updated in the past 6 months or is not awesome.

Don't modify README.md in your pull request. It is automatically generated. Modify template.md instead.

Table of Contents

Archive and Compression

Name Description GitHub Activity

Artificial Intelligence

Name Description GitHub Activity

Database

Database access libraries in Scala.

Name Description GitHub Activity
    19⭐      3🍴 akka-persistence-gcp-datastore) akka-persistence-gcp-datastore is a journal and snapshot store plugin for akka-persistence using google cloud firestore in datastore mode. GitHub stars GitHub commit activity
   238⭐     75🍴 anorm) The Anorm database library GitHub stars GitHub commit activity
   112⭐     24🍴 clickhouse-scala-client) Clickhouse Scala Client with Reactive Streams support GitHub stars GitHub commit activity
    47⭐     40🍴 couchbase-jvm-clients) The Couchbase Monorepo for JVM Clients: Java, Scala, io-core… GitHub stars GitHub commit activity
  2161⭐    356🍴 doobie) Functional JDBC layer for Scala. GitHub stars GitHub commit activity
  1639⭐    694🍴 elastic4s) 🔍 Elasticsearch Scala Client - Reactive, Non Blocking, Type Safe, HTTP Client GitHub stars GitHub commit activity
    31⭐      4🍴 etcd4s) Scala etcd client implementing V3 APIs GitHub stars GitHub commit activity
    94⭐     14🍴 laserdisc) A Future-free Fs2 native pure FP Redis client GitHub stars GitHub commit activity
    14⭐      5🍴 mysql-binlog-stream) None GitHub stars GitHub commit activity
   165⭐     33🍴 neotypes) Scala lightweight, type-safe, asynchronous driver for neo4j GitHub stars GitHub commit activity
   226⭐     45🍴 pulsar4s) Idiomatic, typesafe, and reactive Scala client for Apache Pulsar GitHub stars GitHub commit activity
  2150⭐    346🍴 zio-quill) Compile-time Language Integrated Queries for Scala GitHub stars GitHub commit activity
   850⭐    232🍴 ReactiveMongo) 🍃 Non-blocking, Reactive MongoDB Driver for Scala GitHub stars GitHub commit activity
   790⭐    142🍴 rediscala) Non-blocking, Reactive Redis driver for Scala (with Sentinel support) GitHub stars GitHub commit activity
   161⭐     15🍴 relate) Performant database access in Scala GitHub stars GitHub commit activity
  1962⭐    223🍴 sangria) Scala GraphQL implementation GitHub stars GitHub commit activity
   188⭐     31🍴 scala-forklift) Type-safe data migration tool for Slick, Git and beyond. GitHub stars GitHub commit activity
    58⭐      7🍴 scalarelational) Type-Safe framework for defining, modifying, and querying SQL databases GitHub stars GitHub commit activity
  1261⭐    229🍴 scalikejdbc) A tidy SQL-based DB access library for Scala developers. This library naturally wraps JDBC APIs and provides you easy-to-use APIs. GitHub stars GitHub commit activity
   316⭐    125🍴 scanamo) Simpler DynamoDB access for Scala GitHub stars GitHub commit activity
  2647⭐    609🍴 slick) Slick (Scala Language Integrated Connection Kit) is a modern database query and access library for Scala GitHub stars GitHub commit activity
   839⭐    180🍴 slick-pg) Slick extensions for PostgreSQL GitHub stars GitHub commit activity
    17⭐      0🍴 squery) Simple SQL queries in Scala 3 GitHub stars GitHub commit activity
   584⭐    137🍴 squeryl) A Scala DSL for talking with databases with minimum verbosity and maximum type safety GitHub stars GitHub commit activity
    17⭐      0🍴 molecule) Molecule translates custom Scala code to database queries for multiple databases. GitHub stars GitHub commit activity
   123⭐     63🍴 zio-redis) A ZIO-based redis client GitHub stars GitHub commit activity
  1578⭐    161🍴 skunk) A data access library for Scala + Postgres. GitHub stars GitHub commit activity
    23⭐      2🍴 kvs) Highly available distributed strong eventual consistent and sequentially consistent storage with feeds, sorting and search GitHub stars GitHub commit activity

Messaging

Name Description GitHub Activity

Graphical User Interfaces

Libraries for creation of graphical user interfaces

Name Description GitHub Activity
   672⭐     67🍴 scalafx) ScalaFX simplifies creation of JavaFX-based user interfaces in Scala GitHub stars GitHub commit activity

Web Frameworks

Scala frameworks for web development.

Name Description GitHub Activity
    13⭐      2🍴 analogweb-scala) Tiny High Performance HTTP Server for Scala GitHub stars GitHub commit activity
   529⭐     57🍴 cask) Cask: a Scala HTTP micro-framework. Cask makes it easy to set up a website, backend server, or REST API using Scala GitHub stars GitHub commit activity
  2273⭐    406🍴 finatra) Fast, testable, Scala services built on TwitterServer and Finagle GitHub stars GitHub commit activity
  1266⭐    276🍴 framework) Lift Framework GitHub stars GitHub commit activity
 12534⭐   4094🍴 playframework) The Community Maintained High Velocity Web Framework For Java and Scala. GitHub stars GitHub commit activity
  1642⭐    231🍴 scalajs-react) Facebook's React on Scala.JS GitHub stars GitHub commit activity
  2652⭐    337🍴 scalatra) Tiny Scala high-performance, async web framework, inspired by Sinatra GitHub stars GitHub commit activity
    32⭐      1🍴 sharaf) Minimalistic Scala 3 web framework GitHub stars GitHub commit activity
   709⭐    114🍴 unfiltered) A toolkit for servicing HTTP requests in Scala GitHub stars GitHub commit activity
   210⭐     28🍴 youi) Next generation user interface and application development in Scala and Scala.js for web, mobile, and desktop. GitHub stars GitHub commit activity

Reactive Web Frameworks

Scala libraries for Reactive Web development

Name Description GitHub Activity
  1586⭐    108🍴 Binding.scala) Reactive data-binding for Scala GitHub stars GitHub commit activity
   447⭐     36🍴 udash-core) Scala framework for building beautiful and maintainable web applications. GitHub stars GitHub commit activity
   122⭐     41🍴 vertx-lang-scala) Vert.x for Scala GitHub stars GitHub commit activity

Data Binding and Validation

Scala libraries for data binding and validation

Name Description GitHub Activity
    42⭐      2🍴 dupin) Minimal, idiomatic, customizable validation Scala library. GitHub stars GitHub commit activity
   150⭐     24🍴 octopus) Scala library for boilerplate-free validation GitHub stars GitHub commit activity

i18n

Scala libraries for i18n.

Name Description GitHub Activity
    38⭐      6🍴 scaposer) GNU Gettext .po file loader for Scala GitHub stars GitHub commit activity

Authentication

Libraries for implementing authentications schemes.

Name Description GitHub Activity
    35⭐     11🍴 play-googleauth) Simple play module for authenticating against Google GitHub stars GitHub commit activity
   405⭐    102🍴 play-pac4j) Security library for Play framework 2 in Java and Scala: OAuth, CAS, SAML, OpenID Connect, LDAP, JWT... GitHub stars GitHub commit activity
   538⭐     97🍴 scala-oauth2-provider) OAuth 2.0 server-side implementation written in Scala GitHub stars GitHub commit activity

Cryptography

Cryptography and Encryption Libraries.

Name Description GitHub Activity
   201⭐     52🍴 scrypto) Cryptographic primitives for Scala GitHub stars GitHub commit activity
    15⭐      5🍴 jose) Extensible JOSE library for Scala GitHub stars GitHub commit activity

Testing

Libraries for code testing.

Name Description GitHub Activity
   519⭐     24🍴 bencher) 🐰 Bencher - Continuous Benchmarking GitHub stars GitHub commit activity
   227⭐     29🍴 cornichon) Testing tool in Scala for HTTP JSON API GitHub stars GitHub commit activity
  6430⭐   1191🍴 gatling) Modern Load Testing as Code GitHub stars GitHub commit activity
   179⭐     34🍴 minitest) The super light testing library for Scala and Scala.js GitHub stars GitHub commit activity
   354⭐     59🍴 mockito-scala) Mockito for Scala language GitHub stars GitHub commit activity
   429⭐     90🍴 munit) Scala testing library with actionable errors and extensible APIs GitHub stars GitHub commit activity
  1938⭐    405🍴 scalacheck) Property-based testing for Scala GitHub stars GitHub commit activity
   503⭐     98🍴 ScalaMock) Native Scala mocking framework GitHub stars GitHub commit activity
   277⭐     22🍴 scalaprops) property based testing library for Scala GitHub stars GitHub commit activity
  1149⭐    335🍴 scalatest) A testing tool for Scala and Java developers GitHub stars GitHub commit activity
   734⭐    215🍴 specs2) Software Specifications for Scala GitHub stars GitHub commit activity
   199⭐     36🍴 stryker4s) Mutation testing for Scala GitHub stars GitHub commit activity
   439⭐     49🍴 weaver-test) A test framework that runs everything in parallel. GitHub stars GitHub commit activity
   630⭐    127🍴 testcontainers-scala) Docker containers for testing in scala GitHub stars GitHub commit activity
   486⭐     80🍴 utest) A simple testing framework for Scala GitHub stars GitHub commit activity

JSON

Libraries for work with json.

Name Description GitHub Activity
   546⭐    112🍴 argonaut) Purely functional JSON parser and library in scala. GitHub stars GitHub commit activity
   223⭐     14🍴 borer) Efficient CBOR and JSON (de)serialization in Scala GitHub stars GitHub commit activity
  2485⭐    539🍴 circe) Yet another JSON library for Scala GitHub stars GitHub commit activity
   313⭐     51🍴 diffson) A scala diff/patch library for Json GitHub stars GitHub commit activity
   501⭐    141🍴 jackson-module-scala) Add-on module for Jackson (https://github.com/FasterXML/jackson) to support Scala-specific datatypes GitHub stars GitHub commit activity
   433⭐     73🍴 jawn) Jawn is for parsing jay-sawn (JSON) GitHub stars GitHub commit activity
  1484⭐    328🍴 json4s) JSON library GitHub stars GitHub commit activity
   740⭐     99🍴 jsoniter-scala) Scala macros for compile-time generation of safe and ultra-fast JSON codecs + circe booster GitHub stars GitHub commit activity
    21⭐      5🍴 ninny-json) JSON typeclasses that know the difference between null and absent fields GitHub stars GitHub commit activity
   361⭐    134🍴 play-json) The Play JSON library GitHub stars GitHub commit activity
   112⭐      9🍴 ScalaJack) Fast JSON parser/generator for Scala GitHub stars GitHub commit activity
   973⭐    190🍴 spray-json) A lightweight, clean and simple JSON implementation in Scala GitHub stars GitHub commit activity
     7⭐      0🍴 tupson) Stupid simple Scala 3 library for writing and reading JSON GitHub stars GitHub commit activity
   407⭐    146🍴 zio-json) Fast, secure JSON library with tight ZIO integration. GitHub stars GitHub commit activity

YAML

Libraries for work with YAML.

Name Description GitHub Activity

CSV

Libraries for work with CSV.

Name Description GitHub Activity
   345⭐     36🍴 kantan.csv) CSV handling library for Scala GitHub stars GitHub commit activity
   696⭐    141🍴 scala-csv) CSV Reader/Writer for Scala GitHub stars GitHub commit activity
    29⭐      8🍴 spata) Functional, stream-based CSV processor for Scala GitHub stars GitHub commit activity

Serialization

Libraries for serializing and deserializing data for storage or transport.

Name Description GitHub Activity
   223⭐     14🍴 borer) Efficient CBOR and JSON (de)serialization in Scala GitHub stars GitHub commit activity
   719⭐    236🍴 avro4s) Avro schema generation and serialization / deserialization for Scala GitHub stars GitHub commit activity
   608⭐    156🍴 chill) Scala extensions for the Kryo serialization library GitHub stars GitHub commit activity
  1301⭐    280🍴 ScalaPB) Protocol buffer compiler for Scala. GitHub stars GitHub commit activity
   810⭐    108🍴 scodec) Scala combinator library for working with binary data GitHub stars GitHub commit activity
   791⭐    245🍴 scrooge) A Thrift parser/generator GitHub stars GitHub commit activity
   715⭐    164🍴 upickle) uPickle: a simple, fast, dependency-free JSON & Binary (MessagePack) serialization library for Scala GitHub stars GitHub commit activity
    34⭐      3🍴 proto) Lightweight and fast serialization library for Scala 2/3 based on Protocol Buffers with macros GitHub stars GitHub commit activity

Science and Data Analysis

Libraries for scientific computing, data analysis and numerical processing.

Name Description GitHub Activity
  2288⭐    346🍴 algebird) Abstract Algebra for Scala GitHub stars GitHub commit activity
  6552⭐   1250🍴 ipex-llm) Accelerate local LLM inference and finetuning (LLaMA, Mistral, ChatGLM, Qwen, Baichuan, Mixtral, Gemma, Phi, MiniCPM, etc.) on Intel XPU (e.g., local PC with iGPU and NPU, discrete GPU such as Arc, Flex and Max); seamlessly integrate with llama.cpp, Ollama, HuggingFace, LangChain, LlamaIndex, GraphRAG, DeepSpeed, vLLM, FastChat, Axolotl, etc. GitHub stars GitHub commit activity
  3446⭐    693🍴 breeze) Breeze is/was a numerical processing library for Scala. GitHub stars GitHub commit activity
   137⭐     23🍴 doddle-model) 🍰 doddle-model: machine learning in Scala. GitHub stars GitHub commit activity
   198⭐     23🍴 libra) A dimensional analysis library based on dependent types GitHub stars GitHub commit activity
    80⭐     20🍴 LoMRF) LoMRF is an open-source implementation of Markov Logic Networks GitHub stars GitHub commit activity
    71⭐      3🍴 mgo) Purely functional genetic algorithms for multi-objective optimisation GitHub stars GitHub commit activity 🌎 MLLib
   184⭐     18🍴 numsca) numsca is numpy for scala GitHub stars GitHub commit activity
   137⭐      8🍴 onnx-scala) An ONNX (Open Neural Network eXchange) API and backend for typeful, functional deep learning and classical machine learning in Scala 3 GitHub stars GitHub commit activity
   143⭐     37🍴 openmole) Workflow engine for exploration of simulation models using high throughput computing GitHub stars GitHub commit activity
   141⭐     28🍴 Optimus) Optimus is a mathematical programming library for Scala. GitHub stars GitHub commit activity 🌎 OscaR
    72⭐     10🍴 rings) Rings: efficient JVM library for polynomial rings GitHub stars GitHub commit activity
  6018⭐   1125🍴 smile) Statistical Machine Intelligence & Learning Engine GitHub stars GitHub commit activity
  1763⭐    243🍴 spire) Powerful new number types and numeric abstractions for Scala. GitHub stars GitHub commit activity
   922⭐    122🍴 squants) The Scala API for Quantities, Units of Measure and Dimensional Analysis GitHub stars GitHub commit activity
  6388⭐   2807🍴 zeppelin) Web-based notebook that enables data-driven, interactive data analytics and collaborative documents with SQL, Scala and more. GitHub stars GitHub commit activity
  3827⭐    710🍴 spark-nlp) State of the Art Natural Language Processing GitHub stars GitHub commit activity
     3⭐      0🍴 VecMatLib) Open source Scala library that provides data structures for vectors and matrices GitHub stars GitHub commit activity

Big Data

Name Description GitHub Activity
 23888⭐  13270🍴 flink) Apache Flink GitHub stars GitHub commit activity
    27⭐      8🍴 gridscale) Scala library for accessing various file, batch systems, job schedulers and grid middlewares. GitHub stars GitHub commit activity
 28503⭐  13870🍴 kafka) Mirror of Apache Kafka GitHub stars GitHub commit activity
  1417⭐    387🍴 alpakka-kafka) Alpakka Kafka connector - Alpakka is a Reactive Enterprise Integration library for Java and Scala, based on Reactive Streams and Akka. GitHub stars GitHub commit activity
  2552⭐    513🍴 scio) A Scala API for Apache Beam and Google Cloud Dataflow. GitHub stars GitHub commit activity
Scrunch A Scala wrapper for Apache Crunch which provides a framework for writing, testing, and running MapReduce pipelines.
 39409⭐  28222🍴 spark) Apache Spark - A unified analytics engine for large-scale data processing GitHub stars GitHub commit activity
    85⭐      4🍴 gallia-core) A schema-aware Scala library for data transformation GitHub stars GitHub commit activity
   648⭐     93🍴 nussknacker) Low-code tool for automating actions on real time data Stream processing for the users.

Command Line Interfaces

Libraries for creation of command line interfaces

Name Description GitHub Activity
   647⭐     71🍴 decline) A composable command-line parser for Scala. GitHub stars GitHub commit activity
   186⭐     21🍴 mainargs) A small, convenient, dependency-free library for command-line argument parsing in Scala GitHub stars GitHub commit activity
   676⭐     57🍴 scallop) a simple Scala CLI parsing library GitHub stars GitHub commit activity
  1433⭐    164🍴 scopt) command line options parsing for Scala GitHub stars GitHub commit activity

Image processing and image analysis

2D and 3D image processing and image analysis

Name Description GitHub Activity
   245⭐     65🍴 scalismo) Scalable Image Analysis and Shape Modelling GitHub stars GitHub commit activity
  1071⭐    140🍴 scrimage) JVM - Java, Kotlin, Scala image processing library GitHub stars GitHub commit activity

Sound processing and music

Name Description GitHub Activity

Functional Reactive Programming

Event streams, signals, observables, etc.

Name Description GitHub Activity
  2357⭐    599🍴 fs2) Compositional, streaming I/O library for Scala GitHub stars GitHub commit activity
   183⭐     17🍴 iteratee) Iteratees for Cats GitHub stars GitHub commit activity
  1928⭐    244🍴 monix) Asynchronous, Reactive Programming for Scala and Scala.js. GitHub stars GitHub commit activity
    90⭐     29🍴 REScala) REScala - distributed and reactive programming embedded in OO and FP programs. GitHub stars GitHub commit activity
  4077⭐   1283🍴 zio) ZIO — A type-safe, composable library for async and concurrent programming in Scala GitHub stars GitHub commit activity
   122⭐     41🍴 vertx-lang-scala) Vert.x for Scala GitHub stars GitHub commit activity

Modularization and Dependency Injection

Modularization of applications, dependency injection, etc.

Name Description GitHub Activity
   632⭐     66🍴 airframe) Essential Building Blocks for Scala GitHub stars GitHub commit activity
   615⭐     66🍴 izumi) Productivity-oriented collection of lightweight fancy stuff for Scala toolchain GitHub stars GitHub commit activity
  1267⭐     75🍴 macwire) Zero-cost, compile-time, type-safe dependency injection library. GitHub stars GitHub commit activity
   288⭐     26🍴 scaldi) Lightweight Scala Dependency Injection Library GitHub stars GitHub commit activity
    60⭐      3🍴 jam) Incredibly simple DI Scala library. GitHub stars GitHub commit activity

Distributed Systems

Libraries and frameworks for writing distributed applications.

Name Description GitHub Activity
 13036⭐   3592🍴 akka) Build highly concurrent, distributed, and resilient message-driven applications on the JVM GitHub stars GitHub commit activity
    18⭐      1🍴 annette) Platform to build distributed, scalable, enterprise-wide business applications GitHub stars GitHub commit activity
  8781⭐   1452🍴 finagle) A fault tolerant, protocol-agnostic RPC system GitHub stars GitHub commit activity
    25⭐      2🍴 poppet) Minimal, type-safe RPC Scala library. GitHub stars GitHub commit activity
    10⭐      1🍴 automorph) RPC client and server library for Scala GitHub stars GitHub commit activity

Extensions

Scala extensions.

Name Description GitHub Activity
  2607⭐    368🍴 Ammonite) Scala Scripting GitHub stars GitHub commit activity
  1474⭐    145🍴 better-files) Simple, safe and intuitive Scala I/O GitHub stars GitHub commit activity
    85⭐      6🍴 blindsight) Blindsight is a Scala logging API with DSL based structured logging, fluent logging, semantic logging, flow logging, and context aware logging. GitHub stars GitHub commit activity
  5245⭐   1191🍴 cats) Lightweight, modular, and extensible library for functional programming. GitHub stars GitHub commit activity
  1162⭐     92🍴 chimney) Scala library for boilerplate-free, type-safe data transformations GitHub stars GitHub commit activity
    67⭐      8🍴 chronoscala) A JSR-310 port of nscala_time GitHub stars GitHub commit activity
   256⭐     29🍴 Dsl.scala) A framework to create embedded Domain-Specific Languages in Scala GitHub stars GitHub commit activity
   256⭐     25🍴 each) A macro library that converts native imperative syntax to scalaz's monadic expressions GitHub stars GitHub commit activity
   580⭐     78🍴 eff) Eff monad for cats - https://atnos-org.github.io/eff GitHub stars GitHub commit activity
    66⭐      5🍴 enableIf.scala) A library that toggles Scala code at compile-time, like #if in C/C++ GitHub stars GitHub commit activity
  1190⭐    148🍴 enumeratum) A type-safe, reflection-free, powerful enumeration implementation for Scala with exhaustive pattern match warnings and helpful integrations. GitHub stars GitHub commit activity
   171⭐     25🍴 log4s) High-performance SLF4J wrapper for Scala. GitHub stars GitHub commit activity
   615⭐     66🍴 izumi) Productivity-oriented collection of lightweight fancy stuff for Scala toolchain GitHub stars GitHub commit activity
  1653⭐    205🍴 Monocle) Optics library for Scala GitHub stars GitHub commit activity
   869⭐     79🍴 nscala-time) A new Scala wrapper for Joda Time based on scala-time GitHub stars GitHub commit activity
   824⭐     53🍴 quicklens) Modify deeply nested case class fields GitHub stars GitHub commit activity
  1707⭐    154🍴 refined) Refinement types for Scala GitHub stars GitHub commit activity
  1145⭐     92🍴 scala-async) An asynchronous programming facility for Scala GitHub stars GitHub commit activity
   562⭐     72🍴 scala-graph) Graph for Scala is intended to provide basic graph functionality seamlessly fitting into the Scala Collection Library. Like the well known members of scala.collection, Graph for Scala is an in-memory graph library aiming at editing and traversing graphs, finding cycles etc. in a user-friendly way. GitHub stars GitHub commit activity
   910⭐    130🍴 scala-logging) Convenient and performant logging library for Scala wrapping SLF4J. GitHub stars GitHub commit activity
  1111⭐    223🍴 scalameta) Library to read, analyze, transform and generate Scala programs GitHub stars GitHub commit activity
  4670⭐    706🍴 scalaz) Principled Functional Programming in Scala GitHub stars GitHub commit activity
   525⭐     40🍴 scribe) The fastest logging library in the world. Built from scratch in Scala and programmatically configurable. GitHub stars GitHub commit activity
  3386⭐    531🍴 shapeless) Generic programming for Scala GitHub stars GitHub commit activity
   937⭐     61🍴 simulacrum) First class syntax support for type classes in Scala GitHub stars GitHub commit activity
   197⭐     14🍴 squid) Squid – type-safe metaprogramming and compilation framework for Scala GitHub stars GitHub commit activity
   697⭐     82🍴 tinylog) tinylog is a lightweight logging framework for Java, Kotlin, Scala, and Android GitHub stars GitHub commit activity
  2688⭐    581🍴 util) Wonderful reusable code from Twitter GitHub stars GitHub commit activity

Misc

Projects that don't fit into any specific category.

Name Description GitHub Activity
  2607⭐    368🍴 Ammonite) Scala Scripting GitHub stars GitHub commit activity
   746⭐    151🍴 bootzooka) Simple project to quickly start developing a Scala-based microservice or web application, without the need to write login, user registration etc. GitHub stars GitHub commit activity
  1234⭐    266🍴 eclair) A scala implementation of the Lightning Network. GitHub stars GitHub commit activity
   226⭐     26🍴 fansi) Scala/Scala.js library for manipulating Fancy Ansi colored strings GitHub stars GitHub commit activity
   190⭐     47🍴 fs2-aws) fs2 utilities to interact with AWS GitHub stars GitHub commit activity
    17⭐      7🍴 mailgun4s) Mailgun API implementation in Scala GitHub stars GitHub commit activity
    13⭐      2🍴 managerial) A zero-dependency Scala library for managing resources monadically GitHub stars GitHub commit activity
    34⭐      4🍴 media4s) Scala command-line wrapper around ffmpeg, ffprobe, ImageMagick, and other tools relating to media. GitHub stars GitHub commit activity
   403⭐    132🍴 play-swagger) Swagger spec generator for play framework GitHub stars GitHub commit activity
   225⭐     39🍴 PPrint) Pretty-printing value, types and type-signatures in Scala GitHub stars GitHub commit activity
  1480⭐    176🍴 pureconfig) A boilerplate-free library for loading configuration files GitHub stars GitHub commit activity
     7⭐      2🍴 service-chassis) A scala chassis to get your applications and services bootstrapped quickly GitHub stars GitHub commit activity
    58⭐      2🍴 spliff) Efficient diffing in Scala GitHub stars GitHub commit activity
    20⭐      2🍴 scountries) Scala library that provides an enumeration of ISO 3166 codes for countries, along with their subdivisions. GitHub stars GitHub commit activity
    16⭐      1🍴 scurl-detector) Scala library that detects and extracts URLs from text. GitHub stars GitHub commit activity
     7⭐      1🍴 aptus-core) A utility library aiming to simplify the Scala coding experience. GitHub stars GitHub commit activity

Android

Scala libraries and wrappers for Android development.

Name Description GitHub Activity
  2090⭐    163🍴 scaloid) Scaloid makes your Android code easy to understand and maintain. GitHub stars GitHub commit activity

HTTP

Scala libraries and wrappers for HTTP clients.

Name Description GitHub Activity
  1337⭐    594🍴 akka-http) The Streaming-first HTTP server/module of Akka GitHub stars GitHub commit activity
   426⭐    105🍴 reboot) Scala wrapper for the Java AsyncHttpClient. GitHub stars GitHub commit activity
  1597⭐    221🍴 finch) Scala combinator library for building Finagle HTTP services GitHub stars GitHub commit activity
  2548⭐    788🍴 http4s) A minimal, idiomatic Scala interface for HTTP GitHub stars GitHub commit activity
    91⭐     18🍴 lolhttp) An HTTP Server and Client library for Scala. GitHub stars GitHub commit activity
   722⭐     86🍴 requests-scala) A Scala port of the popular Python Requests HTTP client: flexible, intuitive, and straightforward to use. GitHub stars GitHub commit activity
   335⭐    154🍴 scalaxb) scalaxb is an XML data binding tool for Scala. GitHub stars GitHub commit activity
  1449⭐    304🍴 sttp) The Scala HTTP client you always wanted! GitHub stars GitHub commit activity
  1354⭐    411🍴 tapir) Rapid development of self-documenting APIs GitHub stars GitHub commit activity
   405⭐     97🍴 endpoints4s) Describe HTTP endpoints in Scala and derive clients, servers, and documentation GitHub stars GitHub commit activity
    10⭐      3🍴 frontier) A lightweight HTTP/WebSocket server built with ZIO GitHub stars GitHub commit activity

Semantic Web

Scala libraries for interactions with the Web of Data, and other RDF tools.

Name Description GitHub Activity
    56⭐      8🍴 scowl) A Scala DSL for programming with the OWL API. GitHub stars GitHub commit activity

Metrics and Monitoring

Scala libraries for gathering metrics and monitoring applications.

Name Description GitHub Activity
   426⭐     62🍴 metrics-scala) The scala API for Dropwizard's Metrics. GitHub stars GitHub commit activity

Parsing

Scala libraries for creating parsers.

Name Description GitHub Activity
   358⭐     58🍴 atto) friendly little parsers GitHub stars GitHub commit activity
  1090⭐    164🍴 fastparse) Writing Fast Parsers Fast in Scala GitHub stars GitHub commit activity
   717⭐     86🍴 parboiled2) A macro-based PEG parser generator for Scala 2.10+ GitHub stars GitHub commit activity
   649⭐    131🍴 scala-parser-combinators) simple combinator-based parsing for Scala. formerly part of the Scala standard library, now a separate community-maintained module GitHub stars GitHub commit activity
   233⭐     53🍴 cats-parse) A parsing library for the cats ecosystem GitHub stars GitHub commit activity

Sbt plugins

Sbt plugins to make your life easier.

Name Description GitHub Activity
   707⭐     32🍴 better-monadic-for) Desugaring scala for without implicit withFilters GitHub stars GitHub commit activity
  2035⭐    305🍴 coursier) Pure Scala Artifact Fetching GitHub stars GitHub commit activity
   395⭐     81🍴 mdoc) Typechecked markdown documentation for Scala GitHub stars GitHub commit activity
    90⭐     17🍴 sbt-api-mappings) An Sbt plugin that fills apiMappings for common Scala libraries. GitHub stars GitHub commit activity
  1950⭐    224🍴 sbt-assembly) Deploy über-JARs. Restart processes. (port of codahale/assembly-sbt) GitHub stars GitHub commit activity
   552⭐     88🍴 sbt-buildinfo) I know this because build.sbt knows this. GitHub stars GitHub commit activity
   283⭐     74🍴 sbt-ci-release) sbt plugin to automate Sonatype releases from GitHub Actions GitHub stars GitHub commit activity
   266⭐     35🍴 sbt-dependency-check) SBT Plugin for OWASP DependencyCheck. Monitor your dependencies and report if there are any publicly known vulnerabilities (e.g. CVEs). 🌈 GitHub stars GitHub commit activity
   733⭐    110🍴 sbt-docker) Create Docker images directly from sbt GitHub stars GitHub commit activity
   182⭐     28🍴 sbt-doctest) Doctest for scala GitHub stars GitHub commit activity
    91⭐     20🍴 sbt-ghpages) git, site and ghpages support for sbt projects. GitHub stars GitHub commit activity
   187⭐     55🍴 sbt-header) sbt-header is an sbt plugin for creating file headers, e.g. copyright headers GitHub stars GitHub commit activity
    21⭐      1🍴 sbt-hepek) Sbt plugin for rendering Scala objects to files. And more! GitHub stars GitHub commit activity
    62⭐      8🍴 sbt-ide-settings) SBT plugin for tweaking various IDE settings GitHub stars GitHub commit activity
   790⭐     91🍴 sbt-jmh) "Trust no one, bench everything." - sbt plugin for JMH (Java Microbenchmark Harness) GitHub stars GitHub commit activity
   320⭐     64🍴 sbt-microsites) An sbt plugin to create awesome microsites for your project GitHub stars GitHub commit activity
   457⭐     71🍴 mima) A tool for catching binary incompatibility in Scala GitHub stars GitHub commit activity
  1595⭐    439🍴 sbt-native-packager) sbt Native Packager GitHub stars GitHub commit activity
   495⭐     76🍴 sbt-pack) A sbt plugin for creating distributable Scala packages. GitHub stars GitHub commit activity
   142⭐     56🍴 sbt-pgp) PGP plugin for sbt GitHub stars GitHub commit activity
   643⭐    163🍴 sbt-release) A release plugin for sbt GitHub stars GitHub commit activity
    36⭐      3🍴 sbt-scala-js-map) A Sbt plugin that configures source mapping for Scala.js projects hosted on Github GitHub stars GitHub commit activity
   196⭐     42🍴 sbt-scalafmt) sbt plugin for Scalafmt GitHub stars GitHub commit activity
   649⭐    156🍴 sbt-scoverage) sbt plugin for scoverage GitHub stars GitHub commit activity
   174⭐     74🍴 sbt-site) Site generation for sbt GitHub stars GitHub commit activity
   334⭐     62🍴 sbt-sonatype) A sbt plugin for publishing Scala/Java projects to the Maven central. GitHub stars GitHub commit activity
   124⭐     27🍴 sbt-unidoc) sbt plugin to create a unified Scaladoc or Javadoc API document across multiple subprojects. GitHub stars GitHub commit activity
   759⭐     55🍴 sbt-updates) sbt plugin that can check Maven and Ivy repositories for dependency updates GitHub stars GitHub commit activity
   717⭐    167🍴 sbt-eclipse) Plugin for sbt to create Eclipse project definitions GitHub stars GitHub commit activity
   370⭐     28🍴 splain) better implicit errors for scala GitHub stars GitHub commit activity
   382⭐    105🍴 xsbt-web-plugin) Servlet support for sbt GitHub stars GitHub commit activity
   345⭐    100🍴 sbt-git) A git plugin for sbt GitHub stars GitHub commit activity

XML / HTML

XML and HTML generation and processing

Name Description GitHub Activity
   717⭐    106🍴 scala-scraper) A Scala library for scraping content from HTML pages GitHub stars GitHub commit activity
    60⭐     13🍴 xs4s) XML Streaming for Scala including FS2/cats support GitHub stars GitHub commit activity
    18⭐      4🍴 phobos) Efficient and expressive XML data-binding library for Scala GitHub stars GitHub commit activity

Markdown

Name Description GitHub Activity
   414⭐     45🍴 Laika) Site and E-book Generator and Customizable Text Markup Transformer for sbt, Scala and Scala.js GitHub stars GitHub commit activity

JavaScript

JavaScript generation and interop libraries.

Name Description GitHub Activity
  4569⭐    387🍴 scala-js) Scala.js, the Scala to JavaScript compiler GitHub stars GitHub commit activity

Scheduling

Name Description GitHub Activity
   559⭐    114🍴 akka-quartz-scheduler) Quartz Extension and utilities for cron-style scheduling in Akka GitHub stars GitHub commit activity

Templating

Web templating engines.

Name Description GitHub Activity
   755⭐    117🍴 scalatags) ScalaTags is a small XML/HTML construction library for Scala. GitHub stars GitHub commit activity
   606⭐    104🍴 scalate) Scalate is a Scala based template engine which supports HAML, Mustache and JSP, Erb and Velocity style syntaxes. GitHub stars GitHub commit activity
   547⭐    108🍴 twirl) Twirl is Play's default template engine GitHub stars GitHub commit activity
   106⭐     10🍴 hepek) Typesafe HTML templates and static site generator in pure Scala GitHub stars GitHub commit activity

Tools

Name Description GitHub Activity
   901⭐    202🍴 bloop) Bloop is a build server and CLI tool to compile, test and run Scala fast from any editor or build tool. GitHub stars GitHub commit activity
  2035⭐    305🍴 coursier) Pure Scala Artifact Fetching GitHub stars GitHub commit activity
    45⭐      4🍴 dregex) dregex is a Java library that implements a regular expression engine using deterministic finite automata (DFA). It supports some Perl-style features and yet retains linear matching time, and also offers set operations. GitHub stars GitHub commit activity
    91⭐      7🍴 fast-string-interpolator) Scala macro that generates ultra-fast string interpolators. GitHub stars GitHub commit activity
   127⭐     10🍴 fastring) Extremely fast string formatting GitHub stars GitHub commit activity
  9143⭐   1248🍴 gitbucket) A Git platform powered by Scala with easy installation, high extensibility & GitHub API compatibility GitHub stars GitHub commit activity
  1738⭐    224🍴 giter8) a command line tool to apply templates defined on GitHub GitHub stars GitHub commit activity
  2082⭐    329🍴 metals) Scala language server with rich IDE features 🚀 GitHub stars GitHub commit activity
  2043⭐    331🍴 mill) Mill is a fast JVM build tool that supports Java and Scala. 2-3x faster than Gradle and 5-10x faster than Maven for common workflows, Mill aims to make your project’s build process performant, maintainable, and flexible GitHub stars GitHub commit activity
  4795⭐    935🍴 sbt) sbt, the interactive build tool GitHub stars GitHub commit activity
   827⭐    186🍴 scalafix) Refactoring and linting tool for Scala GitHub stars GitHub commit activity 🌎 Scalafmt
   527⭐    148🍴 scalariform) Scala source code formatter GitHub stars GitHub commit activity
   526⭐     89🍴 scapegoat) Scala compiler plugin for static code analysis GitHub stars GitHub commit activity
  1078⭐    113🍴 wartremover) Flexible Scala code linting tool GitHub stars GitHub commit activity
    23⭐      5🍴 scala2plantuml) Scala2PlantUML generates PlantUML diagrams from Scala code. GitHub stars GitHub commit activity

Geospatial

Libraries to aid with geospatial calculations and artifacts.

Name Description GitHub Activity
  1336⭐    360🍴 geotrellis) GeoTrellis is a geographic data processing engine for high performance applications. GitHub stars GitHub commit activity
    79⭐     17🍴 osm4scala) Scala and Spark library focused on reading OpenStreetMap Pbf files. GitHub stars GitHub commit activity
   131⭐     11🍴 rtree2d) RTree2D is a 2D immutable R-tree for ultra-fast nearest and intersection queries in plane and spherical coordinates GitHub stars GitHub commit activity
    16⭐     10🍴 stac4s) a scala library with primitives to build applications using the SpatioTemporal Asset Catalogs specification GitHub stars GitHub commit activity
    76⭐     18🍴 franklin) A STAC/OGC API Features Web Service GitHub stars GitHub commit activity

Devops

DevOps related tools and libraries.

Name Description GitHub Activity
    75⭐     29🍴 skuber) A Scala Kubernetes client library GitHub stars GitHub commit activity

Learning Scala

Nice books, blogs and other resources to learn Scala

Books

Exercises

Tutorials and courses

Commercial courses

  • 🌎 Foundations of Functional Programming in Scala - a professional video course with exercises covering covers functional principles, custom IO (effects) and functional design.
  • 🌎 Scala Algorithms - a collection of nearly 100 algorithms in pure-functional Scala with test cases, explanations and a web-based IDE. Built with http4s & Scala.js.

Community Members' Blogs

Company Blogs

Podcasts

  • 🌎 The Scala Logs - Interviewing developers, open source contributors, subject matter experts, and the like to talk about FP, Scala, open source, and their interests.
  • 🌎 Scala Love - Podcast about the Scala Programming Language and its community
  • 🌎 CoRecursive Interviews - In-depth Interviews with software developers, often on the subject of scala libraries and functional programming.
  • 🌎 Scala for Fun & Profit - Interviewing Scala users and companies.

Communities

  • 🌎 Scala Ukraine - Telegram chat of Ukrainian Scala Community

Misc.

  • 🌎 Programming Community Curated Resources for Learning Scala
  • Scalera Blog - Blog about Scala language and its environment (howto's, good practices, tips,...). Weekly posts written in both spanish and english
  • 🌎 Scala @LibHunt - A community driven list of useful Scala libraries, frameworks and software
  • 🌎 List of Scala Online Courses - A list of free and paid Scala online courses by Classpert, An online course search and comparison website
  • 🌎 Scala Days Conferences - A youtube channel that provides full fledged videos, recorded at Scala Days Conferences
  •     16⭐      2🍴 CA Art) - A small project aimed at learning Scala on intermediate level by experimenting with Cellular Automata

Source

  9007⭐   1270🍴 lauris/awesome-scala)

About

A community driven list of useful Scala libraries, frameworks and software. With repository stars⭐ and forks🍴

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

 

Languages