Examples of Julia-based End-User Tools

All, I’m looking for examples of tools with an end-user facing interface of some sort for using them, with accessible code repositories. My interest is in surveying how these are structured, built and distributed. A few scoping definitions:

  • End-user facing means intended for an end user to run for some purpose. This would exclude projects that are just pure packages intended to be included in some larger tool, though if the package includes a self-contained MWE that can be practically used as an end-user tool, that’s fine (in that case, ask yourself, would a user actually consider this ready-to-run, that is, there’s enough of a readme or whatever for them to get it going). But, generally, these are going to be Julia “apps”, or stand-alone GUI/CLI tools.
  • The “interface” might be a CLI, a GUI/TUI, or something an end-user would directly interact with to use the tool. We’re not including REPL-only applications where the user would be expected to write Julia code to interact (so manually calling package functions against-REPL-loaded data is out; includeing a file in the REPL and calling main() is OK if that’s all there is to it). Also not interested in things that present an API as the only interface (e.g. a REST service).

Just looking for links to repos in responses; thank you in advance!

1 Like

I have recently created gui application. You find more details here

2 Likes

Do you accept tools that are not fully written in Julia?

I wrote a tool that is basically a single-page web app.
Front-end is in React and backend in Julia using Oxygen.jl.

2 Likes

Pluto.jl is pretty widely used, though the end-use is still writing Julia, just mostly in your own notebooks instead of Pluto API. Javascript implements the browser interface and bridges the Julia backend; pure Julia is hard to come by in a world where established contexts and frameworks rely on other languages.

The Pkg app system is fairly new (1.12+) and experimental, so expect older projects to use different methods, even a brief foray in the REPL. The Model Context Protocol server Kaimon.jl comes to mind as a Pkg app. To affirm the earlier point, while the repo is nearly pure Julia, the server connects Julia REPL sessions to MCP clients that are probably not implemented in Julia.

1 Like

Yes! In fact, part of purpose here is because it is a little bit hard to write such tools only in Julia, so hybrids are fine. Julia just should do most of the work at the core of the tool.
Thanks for your reply!