What is still needed to get PlutoDesktop off the ground?

It seems to me that PlutoDesktop would be the simplest way to get people using Julia without all the normal setup friction and a silver bullet for Julia adoption. Pluto is already being used very successfully for teaching online courses. Simplifying access to that environment sounds like a big win. Just double click a .jl file or launch the application from your OS to immediately start performing some persistent, reactive Julia analysis. It would certainly be a much friendlier UI and setup process than VSCode, which is the currently recommended way to interface with Julia. Unfortunately, the PlutoDesktop project has been “On Hold” without any pre-releases since 2022. What are the roadblocks to getting this functional and fully released?

9 Likes

Hi Nathan, thanks for your interest!

I agree that PlutoDesktop is a really important project!

We got a $6000 NumFocus Small Development Grant around 2024 to finish the project, but the Pluto developer who the grant was for, disappeared, probably working on other projects now. We recently found a new developer to continue the work, but the grant was not enough to get the project finished – there was already a lot of work involved in bringing everything up to date after 3 years and learning new skills. So the project has been updated recently and it’s close, but not ready yet.

The issue is that the project is technically complex: you need some level of understanding of Pluto’s architecture (Julia+JS, complex full-stack app), and a good understanding of NodeJS, Electron, Julia multiprocessing, CI build systems, app distribution and auto-updating to work on PlutoDesktop. This combination of skills is very rare (and expensive), so it will be hard to find another contributor and a grant to pay them.

I’m also worried about the future maintenance – electron apps bundle a very large amount software, and the platform is evolving a lot. So once it’s built, it requires maintenance (it’s a security-sensitive application). It’s near-impossible to find FOSS maintainers, and to get grants for maintaining existing work. I looked into alternatives using tauri and electrobun, which are more lightweight and might require less maintenance, but these have their own challenges (Rust, new-and-evolving platforms, missing functionality).

If you want to contribute and you have time/resources available, get in touch!

8 Likes