Scala Functional programming

Open-source Scala projects categorized as Functional programming | Edit details

Top 23 Scala Functional programming Projects

  • GitHub repo scala

    Scala 2 compiler and standard library. For bugs, see scala/bug

    Project mention: Have you tried functional programming? | dev.to | 2021-09-25

    Some of the most popular programming languages include Haskell, Clojure, Scala, Erlang, F#, Rust, etc.

  • GitHub repo Lila

    ♞ lichess.org: the forever free, adless and open source chess server ♞

    Project mention: How do you kill time? | reddit.com/r/AskReddit | 2021-09-24

    visit lichess.org, it can kill time easily...

  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo Scalaz

    Principled Functional Programming in Scala

    Project mention: In Search of the Best Functional Programming Back-End: 2021 Update | dev.to | 2021-01-24

    I’ve specifically had 2 job offers internally at my company because of this language. First with Cats and Scalaz and now with ZIO, Scala has taken the best parts of Haskell, the best parts of Scala, and made it really nice to work with. You can barely see the OOP leftovers.

  • GitHub repo Shapeless

    Generic programming for Scala

    Project mention: Delphi 11 Alexandria Has Been Released | reddit.com/r/programming | 2021-09-23

    please show me something like this: https://akka.io/ or this: https://zio.dev/ or this: https://github.com/milessabin/shapeless

  • GitHub repo ZIO

    ZIO — A type-safe, composable library for async and concurrent programming in Scala

    Project mention: Pattern Matching in Java 17 and Beyond | reddit.com/r/java | 2021-09-24

    ZIO (interoperates with TypeLevel to some extent)

  • GitHub repo Scala Exercises

    The easy way to learn Scala.

    Project mention: What should I avoid coming from Java to Scala? | reddit.com/r/scala | 2021-08-19

    Hahaha, I know when people ask for advice everyone throws in a book. But honestly, this one is the main "learn scala" book, and it's got a lot of examples so it's not as dry as the rest. Also there's a website where the examples can be done and validated in the browser: https://www.scala-exercises.org/

  • GitHub repo FS2

    Compositional, streaming I/O library for Scala

    Project mention: Introducing effects systems S.A. ZIO at work? | reddit.com/r/scala | 2021-08-23

    Assuming the bug mentioned here is https://github.com/typelevel/fs2/issues/2568, we came up with a partial fix in a day (https://github.com/typelevel/fs2/pull/2569) and a complete fix in 2 days: https://github.com/typelevel/fs2/pull/2572. Note the original bug was opened on a Saturday. :)

  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo doobie

    Functional JDBC layer for Scala.

    Project mention: Hiding Doobie's ConnectionIO implementation detail | reddit.com/r/scala | 2021-05-23

    You may find this issue helpful. tl;dr you can easily make a Transactor with the void Strategy that just ignores the null Connection. But I’m with Rob: at that point, you’re not actually testing anything.

  • GitHub repo Monix

    Asynchronous, Reactive Programming for Scala and Scala.js.

    Project mention: Alternative to RxJava/RxScala | reddit.com/r/scala | 2021-02-08

    The Observer is a bit different, it returns Future[Ack] for built-in back-pressure. We can Continue / Stop synchronously or asynchronously.

  • GitHub repo scalajs-react

    Facebook's React on Scala.JS

    Project mention: What's the maturity level of ScalaJS? | reddit.com/r/scala | 2021-08-27

    We've got server-side rendering with scalajs-react and scala-graal. Here's a tutorial if anyone's interested. What's really cool about scala-graal is that it has some pretty cool caching so that even with dynamic inputs, you can render pages in nanoseconds (as opposed to 10+ or even 100+ ms).

  • GitHub repo Monocle

    Optics library for Scala

    Project mention: Monocle 3 release candidate - a super useful and simple library for optics with poetic api | reddit.com/r/scala | 2021-06-01

    See example https://www.optics.dev/Monocle/

  • GitHub repo DeepLearning.scala

    A simple library for creating complex neural networks

  • GitHub repo frameless

    Expressive types for Spark.

    Project mention: Guide for Apache Spark Setup, Job Optimisation, AWS EMR Cluster Configuration, S3, YARN and HDFS Optimisation | reddit.com/r/apachespark | 2021-04-10

    For type safety with dataframes, techniques like https://github.com/typelevel/frameless can be used.

  • GitHub repo Quicklens

    Modify deeply nested case class fields

  • GitHub repo caliban

    Functional GraphQL library for Scala

    Project mention: Should I learn Scala for my web backend? | reddit.com/r/scala | 2021-02-23

    But you can pick something else. For a modern GraphQL framework you should probably check out https://github.com/ghostdogpr/caliban

  • GitHub repo better-monadic-for

    Desugaring scala `for` without implicit `withFilter`s

  • GitHub repo Learn-by-doing functional programming course on Scala

    learn-by-doing course/tutorial for functional programming on scala

  • GitHub repo argonaut

    Purely functional JSON parser and library in scala.

  • GitHub repo topshell

    TopShell - a purely functional, reactive scripting language

    Project mention: Ask HN: What are some tools / libraries you built yourself? | news.ycombinator.com | 2021-05-16

    I created TopShell - a purely functional, reactive scripting language for fetch/process/visualize style tasks: https://github.com/topshell-language/topshell

  • GitHub repo tofu

    Functional programming toolbox (by TinkoffCreditSystems)

    Project mention: Monocle 3 Roadmap | reddit.com/r/scala | 2021-01-21

    Note: I believe tofu-optics uses a profunctor encoding under the hood which let them side steps some type inference issues. Better to check with Odomontois.

  • GitHub repo TSec

    Type-safe general-cryptography library - https://jmcardon.github.io/tsec/

    Project mention: Authentication library without Play? | reddit.com/r/scala | 2021-06-06

    Tsec - https://github.com/jmcardon/tsec.

  • GitHub repo pfps-shopping-cart

    :shopping_cart: The Shopping Cart application developed in the book "Practical FP in Scala: A hands-on approach"

    Project mention: Good book for idiomatic Scala in 2021? | reddit.com/r/scala | 2021-09-21

    If you refer to "pure functional programming" better referred to as the Programs as Values Paradigm, and if you are using / want to use the typelevel ecosystem, and you are already familiar with cats & cats-effect. Then, you probably want to check the Practical Functional Programming in Scala by Gabriel Volpe: https://leanpub.com/pfp-scala

  • GitHub repo zio-prelude

    A lightweight, distinctly Scala take on functional abstractions, with tight ZIO integration

    Project mention: Scala 3 and Class Data Validation Best Practices | reddit.com/r/scala | 2021-08-31

    ZIO Prelude has Validation and has recently gained support for Refined types.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-09-25.

Index

What are some of the best open-source Functional programming projects in Scala? This list will help you:

Project Stars
1 scala 13,487
2 Lila 10,004
3 Scalaz 4,500
4 Shapeless 3,183
5 ZIO 3,018
6 Scala Exercises 2,396
7 FS2 1,935
8 doobie 1,858
9 Monix 1,805
10 scalajs-react 1,493
11 Monocle 1,415
12 DeepLearning.scala 754
13 frameless 749
14 Quicklens 684
15 caliban 672
16 better-monadic-for 641
17 Learn-by-doing functional programming course on Scala 555
18 argonaut 509
19 topshell 452
20 tofu 356
21 TSec 347
22 pfps-shopping-cart 322
23 zio-prelude 309
Find remote jobs at our new job board 99remotejobs.com. There are 25 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com