Build & Release Maven Central Discord Chat Zulip Scala Steward badge

Glass is a modern optic library, formely known as tofu-optics

Quick Start

To use the whole utils pack just add to your build.sbt:

libraryDependencies += "tf.tofu" %% "glass" % "latest version in badge"

Of course, you can also specify an exact list of glass modules that you want to add to your dependencies (used in place of "glass"):

  • glass-core for optics core (Optics typeclasses)
  • glass-interop for optics interop with Monocle
  • glass-macro for macro optics generators


Proud user of Glass? Feel free to add your company!

Raiffeisen Bank Russia

Risk Management Solutions


Please note we use the following labels for automated release descriptions:

  • chore if your PR does not change any types and runtime semantics
  • fix if your PR merely fixes incorrect behavior


We have an automated check for style conformance. You can run sbt checkfmt before PR. If you have any trouble during this check, just run sbt fmt and commit again.


Copyright the maintainers, 2019-2022

Logos made with love by @impurepics