The Pluto team has been hard at work on Pluto Desktop, an all-in-one Windows application for working with Pluto notebooks. It’s easy to install (download the installer and run), and it comes with everything included: Julia, Pluto, sysimage.
Today is the beta release, built with Pluto 1.0.3. We invite Windows users to install Pluto Desktop beta and tell us what you think! Next, we will make this generally available, and it will be the recommended way to use Pluto on Windows.
Features
PlutoDesktop is the easiest way to use Pluto on Windows. The advantages compared to installing Pluto as a Julia package are:
All in one
Julia and Pluto are included in the app. This means that you don’t need to install and update Pluto. In fact, you don’t even need a terminal! This also means that there is less that can go wrong.
File picker
When you open or save a notebook, you can use the native Explorer window instead of typing a C:\... path. This was previously not possible, because Pluto is a web application that does not have the right permissions.
You can also associate Pluto with the .jl or .plutojl file types, so you can double click to open notebooks.
Auto updating
The Pluto Desktop app checks for updates in the background. So you get the latest Julia and Pluto versions automatically.
Easier sessions management
Each window is one notebook. If you close a notebook, it shuts down. This makes it easier to understand which notebooks are running. (Tip: You can still open the same notebook in a mirror view.)
Who is this for?
Although everybody is welcome to use this, it is generally focussed on people who are not comfortable using the terminal. Students and teachers who are just interested in using Pluto.jl and want an easy installation, this is what you are looking for!
Can I still install Pluto myself?
Yes! On all platforms (Windows, MacOS, Linux), you can still install Pluto as a package from the Julia package manager. Pluto Desktop is an extra option for Windows users.
How does it work?
Pluto Desktop is a NodeJS Electron wrapper around Pluto. The Pluto app is mostly the same (installed from the Pluto.jl package), but there is some special functionality built into Pluto that is shown when Pluto detects that it is in desktop mode – mostly related to file management.
During package build, we include Julia, and we use PackageCompiler.jl to generate a separate sysimage that includes Pluto. This makes the Pluto installation relocatable (without needing a separate Julia depot), stable (can’t mess up the files), cleanly updatable, and it improves launch time. All other package management works the same as regular Pluto, using your global ~/.julia depot.
The version number of PlutoDesktop looks like 1.0.2-build006, where 1.0.2 is the Pluto version, and 006 is the iteration of PlutoDesktop releases based on that Pluto version.
Try it yourself!
You can install PlutoDesktop on Windows using the download link in our README on GitHub. Please let us know what you think! Since this is a beta release, we need your feedback to get PlutoDesktop ready.
AI disclaimer
This post is handwritten. Pluto is handwritten. Pluto Desktop is a mix of handwritten code, AI assisted code and vibe coding, with human review.
Credits
PlutoDesktop was started by Dhruv as a Google Summer of Code project, led by Connor Burns. Later, Boshra Ariguib continued development with a NumFOCUS Small Development Grant. I finished the beta release using AI coding tools.


