polynote
A better notebook for Scala (and more)
...Designed to address shortcomings in classic notebook solutions, it blends features familiar from IDEs — such as smart autocomplete, parameter hints, and better runtime insights — with the flexibility of notebook workflows, enhancing both developer productivity and data exploration. Unlike many notebook environments that are tied to a single language kernel, Polynote tracks and manages state consistently across cells based on execution order and cell dependencies, which reduces hidden state and makes notebooks more reproducible and understandable.