JupyterLab

JupyterLab is a web-based IDE. It is similar to RStudio in that it allows syntax highlighting, code suggestions and autocompletion, as well as convenient ways to view the documentation and plot output. However, it utilizes the notebook format, which is closer to RMarkdown, rather than standard script files.

JupyterLab IDE, running in a browser

Furthermore, while JupyterLab is developed with Python in mind, it is possible to use R, and many other programming languages via different kernels. A full list of kernels can be found here.

Otherwise, most of the advantages of JupyterLab are the same as the ones for RStudio, with the only difference being that JupyterLab only offers a web-based application, which can be installed locally, in a docker container, or in a server.

JupyterLab is free to use.

A note on code completion

Depending on the version of JupyterLab, R and Python, sometimes code completion doesn’t fully work. While in some cases, this is due to a bug in one of the libraries (which will usually be fixed in a future version), some of the setting changes can be toggled in order to, hopefully, fix problems with code completion. If you do not get code autocompletion suggestions when pressing Tab on your code - you can try to modify the following settings:

  • Launch JupyterLab.
  • On the top menu, go to Settings -> Editor Settings.
  • In the Settings menu you should see two Code completion tabs, these tabs are for the @jupyter-lsp/jupyterlab-lsp:completion and @jupyterlab/completer-extension:manager plugins in JupyterLab (assuming that you have the language LSP server installed and configured correctly).
  • In one of the Code Completion tabs change the following settings:
    • Continuous hinting - change this to be on.
    • Wait for kernel if busy - change this to be off.
    • Prioritize completion from kernel - change this to be on.
    • Case-sensitive filtering - change this to be off.
    • Include perfect matches - change this to be on.
    • Pre-filter matches - change this to be off.
  • In the other Code Completion tab change the following settings:
    • Show the documentation panel - change this to be on.
    • Enable autocompletion - change this to be on.

Experimenting with turning on/off some of the above settings should return some of the autocompletion functionality.