JupyterLab is the next-generation web-based Jupyter user interface. It allows you to work with Jupyter Notebooks, as well as editors, terminals, and more, to produce interactive documents for data science, statistical modeling, data visualization, and more.
It has native viewers for PDF, CSV, JSON, images, and more. It is also extensible to support other formats.
JupyterLab's left sidebar has tabs for using it as a file manager, a Jupyter kernel manager, or a Jupyter Notebook metadata editor.
Writing code in Jupyter Notebooks enables an interactive development experience. You can write code, see the results, and modify the code—all without restarting your process or losing your in-memory data. This is a great fit for exploratory programming when you are not sure what your end result will look like.
Exploration is common in data science; after all, science is the process of finding out answers not known before. But exploration is not limited to data science. Jupyter works well for system diagnostics and automation where you don't know the answer or solution in advance. Whenever feedback is useful for the next step, whether it is image manipulation, analyzing your exercise data, or writing games, Jupyter's bias toward exploration can be helpful.
Jupyter and JupyterLab are great tools, so this JupyterLab cheat sheet will make it easier for you to get started.