# Using JupyterLab

**URL:** <https://discourse.julialang.org/t/using-jupyterlab/20595>\
**Category:** New to Julia\
**Created:** [February 7, 2019, 11:10am UTC](https://discourse.julialang.org/t/using-jupyterlab/20595 "2019-02-07T11:10:52Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![yordiak](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yordiak/32/12584_2.png) [@yordiak](https://discourse.julialang.org/u/yordiak)\
**Post date:** [February 7, 2019, 11:10am UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/1 "2019-02-07T11:10:52Z")

</div>

Hello,

Since I am a newbie in Julia, I would appreciated if you could provide me the steps on who to make Julia to work in Jupyterlab.

I am running julia 1.1.0 on win10. I use winpython as my python (v3.6) distribution.

Thanks in advance

---

<div class="post-metadata">

**Author:** ![davide](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davide/32/52136_2.png) [@davide](https://discourse.julialang.org/u/davide)\
**Post date:** [February 7, 2019, 11:48am UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/2 "2019-02-07T11:48:02Z")

</div>

Install IJulia and build it:

```julia
] add IJulia
build IJulia

```

After that, run jupyter-lab (e.g. form bash console, not from within julia) and from there choose which notebook to run. Have fun.  
The only think I did not get to work (yet) in jupyter-lab (but works with jupyter) is Interact.jl .

---

<div class="post-metadata">

**Author:** ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)\
**Post date:** [February 7, 2019, 12:06pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/3 "2019-02-07T12:06:13Z")

</div>

You can also install it from within julia. That’s smart in particular if you don’t already have jupyter lab installed as it will install it for you.

```julia
using IJulia
jupyterlab() # use detached=true if you want to continue using your julia REPL session

```

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [February 7, 2019, 12:16pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/4 "2019-02-07T12:16:03Z")

</div>

> [@JupyterLab (beta) is out. Anyone tried it?](https://discourse.julialang.org/t/jupyterlab-beta-is-out-anyone-tried-it/9214/16):
>
> Install IJulia and build it:

`add IJulia` automatically builds it. You only need to manually run `build IJulia` if you need to re-build for some reason, e.g. if the location of your Julia installation has moved.

---

<div class="post-metadata">

**Author:** ![ValdarT](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/valdart/32/24146_2.png) [@ValdarT](https://discourse.julialang.org/u/ValdarT)\
**Post date:** [February 7, 2019, 9:04pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/5 "2019-02-07T21:04:49Z")

</div>

> [@JupyterLab (beta) is out. Anyone tried it?](https://discourse.julialang.org/t/jupyterlab-beta-is-out-anyone-tried-it/9214/16):
>
> The only think I did not get to work (yet) in jupyter-lab (but works with jupyter) is Interact.jl .

For me it doesn’t work before I refresh my browser window, after which it works just fine (more specifically, the output displays correctly but controls won’t work before I refresh).

You need to have the extension installed as well, of course, [as documented](http://juliagizmos.github.io/Interact.jl/stable/tutorial.html#Displaying-a-widget-1).

---

<div class="post-metadata">

**Author:** ![yordiak](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yordiak/32/12584_2.png) [@yordiak](https://discourse.julialang.org/u/yordiak)\
**Post date:** [February 8, 2019, 8:19am UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/6 "2019-02-08T08:19:32Z")

</div>

Thanks for your replies

The answered provided by @mkborregaard worked just fine 🙂

---

<div class="post-metadata">

**Author:** ![davide](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/davide/32/52136_2.png) [@davide](https://discourse.julialang.org/u/davide)\
**Post date:** [February 8, 2019, 8:37am UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/7 "2019-02-08T08:37:56Z")

</div>

> [@JupyterLab (beta) is out. Anyone tried it?](https://discourse.julialang.org/t/jupyterlab-beta-is-out-anyone-tried-it/9214/19):
>
> > The only think I did not get to work (yet) in jupyter-lab (but works with jupyter) is Interact.jl .
> 
> For me it doesn’t work before I refresh my browser window, after which it works just fine (more specifically, the output displays correctly but controls won’t work before I refresh).
> 
> You need to have the extension installed as well, of course, [as documented](http://juliagizmos.github.io/Interact.jl/stable/tutorial.html#Displaying-a-widget-1).

That’s a good news. So something got messed up with my installation: I have WebIO but nothing is displayed (while some times ago, probably was Julia 0.6, I had the graph displayed, although controls were ineffective).

---

<div class="post-metadata">

**Author:** ![jleman](https://avatars.discourse-cdn.com/v4/letter/j/df788c/32.png) [@jleman](https://discourse.julialang.org/u/jleman)\
**Post date:** [March 25, 2019, 6:09pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/8 "2019-03-25T18:09:37Z")

</div>

Thanks for the information. I get the following every time I execute the commands you list above:

```julia
julia> using IJulia
julia> jupyterlab()
install JupyterLab via Conda, y/n? [y]: y
[ Info: Running `conda install -y jupyterlab` in root environment
Collecting package metadata: done
Solving environment: done

# All requested packages already installed.

```

This works, but it takes a minute for it to decide Jupyterlab is already installed. is there a way to set things up so it doesn’t ask to install via Conda every time?

---

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [March 25, 2019, 9:01pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/9 "2019-03-25T21:01:29Z")

</div>

Hm… seems like every time I open a new Julia session, and do:

```nohighlight
julia> using IJulia
julia> jupyterlab()

```

Julia suggests to (re-) install Jupyter Lab:

```nohighlight
julia> jupyterlab()
install JupyterLab via Conda, y/n? [y]: y
[ Info: Running `conda install -y jupyterlab` in root environment
Collecting package metadata: done
Solving environment: done

```

I assume that I don’t have to answer “y” on this question\>?

---

<div class="post-metadata">

**Author:** ![Innocent\_Angel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/innocent_angel/32/12633_2.png) [@Innocent\_Angel](https://discourse.julialang.org/u/Innocent_Angel)\
**Post date:** [February 4, 2020, 3:19pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/10 "2020-02-04T15:19:54Z")

</div>

> using IJulia  
> jupyterlab()

> > results in the following error (it does not install jupyterlab rather throws an error)

[Info: running setenv(`/usr/bin/jupyter lab`,[“PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games”, “GNOME\_TERMINAL\_SERVICE=:1.105”, “PWD=/home/jl”, “USERNAME=jl”, “XDG\_SESSION\_CLASS=user”, “DISPLAY=:0”, “GDMSESSION=gnome”, “WAYLAND\_DISPLAY=wayland-0”, “GJS\_DEBUG\_TOPICS=JS ERROR;JS LOG”, “QT\_ACCESSIBILITY=1”, “SHELL=/bin/bash”, “GJS\_DEBUG\_OUTPUT=stderr”, “XDG\_SEAT=seat0”, “DBUS\_SESSION\_BUS\_ADDRESS=unix:path=/run/user/1000/bus”, “XDG\_MENU\_PREFIX=gnome-”, “XDG\_CURRENT\_DESKTOP=GNOME”, “LANG=en\_US.UTF-8”, “LOGNAME=jl”, “GNOME\_DESKTOP\_SESSION\_ID=this-is-deprecated”, “GTK\_MODULES=gail:atk-bridge”, “XDG\_SESSION\_DESKTOP=gnome”, “SHLVL=1”, “SSH\_AUTH\_SOCK=/run/user/1000/keyring/ssh”, “DESKTOP\_SESSION=gnome”, “GDM\_LANG=en\_US.UTF-8”, “SESSION\_MANAGER=local/debian:@/tmp/.ICE-unix/932,unix/debian:/tmp/.ICE-unix/932”, “XDG\_VTNR=2”, “XDG\_SESSION\_ID=2”, “XDG\_SESSION\_TYPE=wayland”, “XDG\_RUNTIME\_DIR=/run/user/1000”, “_=/usr/bin/julia", “USER=jl”, “GNOME\_TERMINAL\_SCREEN=/org/gnome/Terminal/screen/0f3a14e8\_72f4\_4d71\_a404\_71f436d8af93”, “HOME=/home/jl”, “TERM=xterm-256color”, “LS\_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.wim=01;31:.swm=01;31:.dwm=01;31:.esd=01;31:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:\*.xspf=00;36:”, “COLORTERM=truecolor”, “OPENBLAS\_MAIN\_FREE=1”, “VTE\_VERSION=5402”])  
Process(setenv(`/usr/bin/jupyter lab`,[“PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games”, “GNOME\_TERMINAL\_SERVICE=:1.105”, “PWD=/home/jl”, “USERNAME=jl”, “XDG\_SESSION\_CLASS=user”, “DISPLAY=:0”, “GDMSESSION=gnome”, “WAYLAND\_DISPLAY=wayland-0”, “GJS\_DEBUG\_TOPICS=JS ERROR;JS LOG”, “QT\_ACCESSIBILITY=1” … “XDG\_RUNTIME\_DIR=/run/user/1000”, "_=/usr/bin/julia”, “USER=jl”, “GNOME\_TERMINAL\_SCREEN=/org/gnome/Terminal/screen/0f3a14e8\_72f4\_4d71\_a404\_71f436d8af93”, “HOME=/home/jl”, “TERM=xterm-256color”, “LS\_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:_.tar=01;31:_.tgz=01;31:_.arc=01;31:_.arj=01;31:_.taz=01;31:_.lha=01;31:_.lz4=01;31:_.lzh=01;31:_.lzma=01;31:_.tlz=01;31:_.txz=01;31:_.tzo=01;31:_.t7z=01;31:_.zip=01;31:_.z=01;31:_.dz=01;31:_.gz=01;31:_.lrz=01;31:_.lz=01;31:_.lzo=01;31:_.xz=01;31:_.zst=01;31:_.tzst=01;31:_.bz2=01;31:_.bz=01;31:_.tbz=01;31:_.tbz2=01;31:_.tz=01;31:_.deb=01;31:_.rpm=01;31:_.jar=01;31:_.war=01;31:_.ear=01;31:_.sar=01;31:_.rar=01;31:_.alz=01;31:_.ace=01;31:_.zoo=01;31:_.cpio=01;31:_.7z=01;31:_.rz=01;31:_.cab=01;31:_.wim=01;31:_.swm=01;31:_.dwm=01;31:_.esd=01;31:_.jpg=01;35:_.jpeg=01;35:_.mjpg=01;35:_.mjpeg=01;35:_.gif=01;35:_.bmp=01;35:_.pbm=01;35:_.pgm=01;35:_.ppm=01;35:_.tga=01;35:_.xbm=01;35:_.xpm=01;35:_.tif=01;35:_.tiff=01;35:_.png=01;35:_.svg=01;35:_.svgz=01;35:_.mng=01;35:_.pcx=01;35:_.mov=01;35:_.mpg=01;35:_.mpeg=01;35:_.m2v=01;35:_.mkv=01;35:_.webm=01;35:_.ogm=01;35:_.mp4=01;35:_.m4v=01;35:_.mp4v=01;35:_.vob=01;35:_.qt=01;35:_.nuv=01;35:_.wmv=01;35:_.asf=01;35:_.rm=01;35:_.rmvb=01;35:_.flc=01;35:_.avi=01;35:_.fli=01;35:_.flv=01;35:_.gl=01;35:_.dl=01;35:_.xcf=01;35:_.xwd=01;35:_.yuv=01;35:_.cgm=01;35:_.emf=01;35:_.ogv=01;35:_.ogx=01;35:_.aac=00;36:_.au=00;36:_.flac=00;36:_.m4a=00;36:_.mid=00;36:_.midi=00;36:_.mka=00;36:_.mp3=00;36:_.mpc=00;36:_.ogg=00;36:_.ra=00;36:_.wav=00;36:_.oga=00;36:_.opus=00;36:_.spx=00;36:\*.xspf=00;36:”, “COLORTERM=truecolor”, “OPENBLAS\_MAIN\_FREE=1”, “VTE\_VERSION=5402”]; dir=“/home/jl”), ProcessExited(1))

> any ideas how to handle this?

---

<div class="post-metadata">

**Author:** ![Soerendip\_Pidneroes](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/soerendip_pidneroes/32/209803_2.png) [@Soerendip\_Pidneroes](https://discourse.julialang.org/u/Soerendip_Pidneroes)\
**Post date:** [June 7, 2024, 1:54pm UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/11 "2024-06-07T13:54:11Z")

</div>

It would be nice to have a complete recipe to do that . These ‘hints’ are not overly helpful.

---

<div class="post-metadata">

**Author:** ![jd-foster](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jd-foster/32/35824_2.png) [@jd-foster](https://discourse.julialang.org/u/jd-foster)\
**Post date:** [June 10, 2024, 9:51am UTC](https://discourse.julialang.org/t/using-jupyterlab/20595/12 "2024-06-10T09:51:47Z")

</div>

More details can be found at  
[https://julialang.github.io/IJulia.jl/dev/manual/installation/](https://julialang.github.io/IJulia.jl/dev/manual/installation/)
