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.
Add to your build.sbt
libraryDependencies ++= Seq(
"io.github.sagifogel" %% "proptics-core" % "0.5.1",
"io.github.sagifogel" %% "proptics-profunctor" % "0.5.1",
"io.github.sagifogel" %% "proptics-macros" % "0.5.1"
)
Quick links:
- There is a Scaladoc API documentation for the library, which includes optics (Lens, Traversal Fold, and more)
Profunctors, and Data types