optics-dev/Monocle
Optics library for Scala observed · 2026-08-28
Health v2 · maintenance only
67/100
- Activity 98
- Release rhythm 8
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 4611
- days_rel: n/a
- days_push: 12
- n_releases_24m: 0
Adoption not part of the score
1700 stars · 207 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Monocle is a Scala optics library providing a simple yet powerful API to access and transform immutable data using lenses, prisms, traversals, and other optics. It integrates with Cats and supports Scala 2.13 and 3.x.
Use cases
- update a nested field in an immutable case class
- modify values inside Option or List fields immutably
- get, replace, or modify deeply nested data structures
- compose optics like Lens, Prism, and Traversal
- insert, delete, or upsert entries in a Map via at/index optics
- work with immutable data in a functional programming style
When to choose
- you are writing Scala with immutable data models and need ergonomic nested updates
- you use Cats/Typelevel ecosystem and want a mature optics library
- you need composable access and transformation of deeply nested or optional structures
When to avoid
- your project uses mutable data structures where direct field assignment suffices
- you are not using Scala or the JVM
- you want a minimal dependency footprint and don't need optics abstractions
Facets
library · maturity active
serialization developer-tools jvm optics lens functional-programming immutable-data typelevel cats scala
7 sources
- readme: https://github.com/optics-dev/Monocle · fetched 2026-08-28 · c0721f8f8b14
- homepage: https://www.optics.dev/Monocle/ · fetched 2026-08-29 · b4aae4ccb211
- site_page: https://www.optics.dev/Monocle/docs/optics · fetched 2026-08-29 · c1cd21a76d3c
- site_page: https://www.optics.dev/Monocle/docs/release_notes · fetched 2026-08-29 · 04b87f68441e
- site_page: https://www.optics.dev/Monocle/docs/faq · fetched 2026-08-29 · 10d983c0e643
- site_page: https://www.optics.dev/Monocle/docs/focus · fetched 2026-08-29 · 522e44d36e57
- site_page: https://www.optics.dev/Monocle/api/monocle/index.html · fetched 2026-08-29 · 44b2cc92991b
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| optics-dev/Monocle | main | 67 |
For agents
markdown · JSON · MCP: product_card(name="optics-dev/Monocle")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem