sagifogel / Proptics

Profunctor optics and lenses library for Scala
https://sagifogel.github.io/Proptics
MIT License
9 stars 5 forks source link
cats folds functional-programming lenses lenses-library optics prisms profunctor-optics scala spire traversals

Proptics Logo

CI Maven Central Scala Steward badge

Overview

Proptics is a Profunctor Optics and Lenses library for Scala programming language.
It uses a Profunctor encoding for its internal representation of optics, you can learn about profunctors in the profunctor guide.
Proptics is available for Scala 2.12, Scala 2.13, Scala 3.0, and Scala.js, and is built on top of Cats, and Spire.

Getting Started

Add to your build.sbt

libraryDependencies ++= Seq(
  "io.github.sagifogel" %% "proptics-core" % "0.5.2",
  "io.github.sagifogel" %% "proptics-profunctor" % "0.5.2",
  "io.github.sagifogel" %% "proptics-macros" % "0.5.2"
)

Quick links:

Documentation