Scala Extensions

Open-source Scala projects categorized as Extensions

Top 23 Scala Extension Projects

  • cats

    Lightweight, modular, and extensible library for functional programming.

    Project mention: What are the design principles of Cargo? | reddit.com/r/rust | 2022-12-01
  • Scalaz

    Principled Functional Programming in Scala

    Project mention: Typeclasses explained in Java | dev.to | 2022-07-27

    If I managed to gain you interest you can take a look at one of the following libraries like cats, scalaz for scala and vavr for java which contain type class definitions and implementations for common types.

  • Scout APM

    Truly a developer’s best friend. Scout APM is great for developers who want to find and fix performance issues in their applications. With Scout, we'll take care of the bugs so you can focus on building great things 🚀.

  • Shapeless

    Generic programming for Scala

    Project mention: Scala 3: modifying product types in compile-time | reddit.com/r/scala | 2022-07-14

    If that's what you want, you can use Shapeless' records and HList. You can probably replicate this in plain Scala 3 with tuples and literal types as you said. It won't play nice with your others libs though but maybe there are integrations.

  • Twitter Util

    Wonderful reusable code from Twitter

  • Ammonite-Ops

    Scala Scripting

    Project mention: Does ammonite support indent based syntax? | reddit.com/r/scala | 2022-10-23

    The indent based syntax is only available in Scala 3, you have to download a matching ammonite version from https://github.com/com-lihaoyi/Ammonite/releases

  • refined

    Refinement types for Scala

    Project mention: Can types replace validation? | reddit.com/r/programming | 2022-08-28

    In one respect, nothing. You’re right. Even given refinement types as in Haskell or Scala, there is indeed a necessarily-partial function (refineV in Scala) to refine a value to its refinement type.

  • Monocle

    Optics library for Scala

    Project mention: Ref in cats-effect. When should I use it, and when should I not? | reddit.com/r/scala | 2022-07-09

    Without concurrency, using a Ref doesn't buy you anything over just using a var. If you want the benefits of immutability with an API that resembles mutability, you have to use something like Monocle.

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Data Platform where developers build real-time applications for analytics, IoT and cloud-native services in less time with less code.

  • better-files

    Simple, safe and intuitive Scala I/O

  • Scala Async

    An asynchronous programming facility for Scala

    Project mention: Scala Multiplatform. Across the Universe | reddit.com/r/scala | 2022-06-18

    Who said FP was mandatory? Scala is not Haskell, nor Lisp! If you don't like effect systems and all, don't use them. The choice is yours, actually. Kotlin's coroutines aren't better than what Scala offers. You can even use async/await in Scala. IMO, if you get yourself in a "callback hell" with Scala, then you're not using it properly. For comprehensions are easy to understand, and work with Futures, for instance.

  • Enumeratum

    A type-safe, reflection-free, powerful enumeration implementation for Scala with exhaustive pattern match warnings and helpful integrations.

    Project mention: Simple, Naïve, and Wrong: More than you wanted to know about Scala Case Classes | reddit.com/r/scala | 2022-02-26

    And for exactly the same reasons one shouldn't override equals and hashCode in a case class, they shouldn't manually implement an enumeration and instead let a well-tested macro (2.x) or the compiler itself (3.x) handle reliably doing the automated code generation. The more code that is generated by the compiler, the smaller the defects, technical debt, and security vulnerability surface areas.

  • Cassovary

    Cassovary is a simple big graph processing library for the JVM

  • scala.meta

    Library to read, analyze, transform and generate Scala programs

    Project mention: Scala Library To Generate Case Classes for JSON | reddit.com/r/scala | 2022-08-16

    I just wrote a small generator for a personal project using scalameta. It might be worth doing just for the learning experience, I thought it was a blast to use.

  • Simulacrum

    First class syntax support for type classes in Scala

  • Chimney

    Scala library for boilerplate-free, type-safe data transformations

    Project mention: Output object with Circe with sealed trait + case classes adds sealed trait block | reddit.com/r/scala | 2022-11-13

    Perhaps, https://github.com/scalalandio/chimney would leverage it.

  • Scala-Logging

    Convenient and performant logging library for Scala wrapping SLF4J.

  • n-scala

    A new Scala wrapper for Joda Time based on scala-time

  • Quicklens

    Modify deeply nested case class fields

    Project mention: I want to move to Scala 3, but I'm not sure what libraries to use | reddit.com/r/scala | 2022-08-31

    Lens use QuickLens https://github.com/softwaremill/quicklens

  • Freestyle

    A cohesive & pragmatic framework of FP centric Scala libraries

  • 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.

  • Eff

    Eff monad for cats - https://atnos-org.github.io/eff

  • scribe

    The fastest logging library in the world. Built from scratch in Scala and programmatically configurable.

    Project mention: How to do JSON logging in Scala? | reddit.com/r/scala | 2022-10-22

    I believe Scribe also supports what you want.

  • LArray

    Large off-heap arrays and mmap files for Scala and Java

  • Hamsters

    A mini Scala utility library

  • Zigi

    Close all those tabs. Zigi will handle your updates.. Zigi monitors Jira and GitHub updates, pings you when PRs need approval and lets you take fast actions - all directly from Slack! Plus it reduces cycle time by up to 75%.

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 2022-12-01.

Scala Extensions related posts

Index

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

Project Stars
1 cats 4,803
2 Scalaz 4,591
3 Shapeless 3,302
4 Twitter Util 2,572
5 Ammonite-Ops 2,534
6 refined 1,564
7 Monocle 1,548
8 better-files 1,448
9 Scala Async 1,133
10 Enumeratum 1,121
11 Cassovary 1,013
12 scala.meta 1,008
13 Simulacrum 936
14 Chimney 898
15 Scala-Logging 884
16 n-scala 870
17 Quicklens 747
18 Freestyle 615
19 Scala Graph 543
20 Eff 537
21 scribe 427
22 LArray 392
23 Hamsters 290
Clean code begins in your IDE with SonarLint
Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
www.sonarlint.org