Polynote is an experimental polyglot notebook environment. It supports mixing multiple languages in one notebook, and sharing data between them seamlessly. It encourages reproducible notebooks with its immutable data model. (Learn more)
Currently, it supports Scala and Python (with or without Spark), SQL, and Vega.
This is free and open source software.
Key Features
- Code editing – the code editing capabilities in most notebook tools leave plenty to be desired. Why can’t a notebook tool have modern editing capabilities like those you’d find in an IDE?
- Polynote provides useful autocomplete, parameter hints, and more – we’re planning to add even more features, like jump-to-definition.
- Text editing – you can use the WYSIWYG editor for composing text cells, so you’ll know what the text will look like as you’re writing. TeX equations are also supported.
- Multi-language support – Polynote allows you to mix multiple languages in one notebook, while sharing definitions seamlessly between them.
- Runtime insight – Polynote tries to keep you informed of what’s going on at runtime:
- The tasks area shows you what the kernel is doing at any given time.
- The symbol table shows you what variables and functions you’ve defined, so you don’t have to scroll around to remind yourself.
- Compile failures and runtime exceptions are highlighted in the editor (for supported languages), so you can see exactly what’s going wrong.
Website: polynote.org
Support: GitHub Code Repository
Developer: Jeremy R Smith, jonathanindig, Omid Mogasemi
License: Apache License 2.0

Polynote is written in TypeScript and Scala. Learn TypeScript with our recommended free books and free tutorials. Learn Scala with our recommended free books and free tutorials.
Related Software
| Notebook software | |
|---|---|
| JupyterLab | The next generation user interface for Project Jupyter |
| RStudio | Integrated development environment (IDE) for R |
| Jupyter Notebook | Web-based notebook environment for interactive computing |
| Positron | Next-generation data science IDE |
| marimo | Reactive Python notebook |
| Apache Zeppelin | Multi-purpose notebook |
| IPython | Rich architecture for interactive computing |
| Polynote | Experimental polyglot notebook environment |
| nteract | Notebooks on your Desktop |
| Pluto | Simple reactive notebooks for Juli |
| Pretzel | Billed as a modern replacement for Jupyter Notebooks |
| Spark Notebook | Interactive and reactive data science using Scala and Spark |
| BeakerX | Kernels and extensions to the Jupyter interactive computing environment |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

