List of Julia software and tools
In-game article clicks load inline without leaving the challenge.
This is a list of Julia software and tools, including IDEs, notebook environments, package management tools, scientific and machine-learning libraries, debugging and performance tools, and related projects.
Integrated development environments and editors
- Visual Studio Code — supports Julia through extensions
- Emacs — supports Julia editing through major modes and related packages
- Vim — supports Julia syntax highlighting and editing
- Neovim — supports Julia development through plugins and language-server integration
- Sublime Text — supports Julia syntax highlighting and packages
- Atom — formerly used for Julia development through Juno
- Juno — Julia-focused IDE built on Atom
- JuliaPro — distribution of Julia bundled with development tools
Notebook environments
- Jupyter — web-based notebook environment with Julia support
- Pluto.jl — reactive notebook environment for Julia
- Google Colab — cloud notebook platform with Julia support
- Quarto — scientific and technical publishing system with Julia support
Package management and build tools
- Pkg — built-in package manager for Julia
- JuliaHub — platform for package, project, and cloud-based Julia workflows
- PackageCompiler.jl — compiler tool for creating apps, libraries, and system images
- StaticCompiler.jl — compiler for producing small standalone binaries from a static subset of Julia
- PrecompileTools.jl — package precompilation tool
- Revise.jl — updates method definitions in a running Julia session
Debugging and performance tools
- Debugger.jl — source-level debugger for Julia
- JuliaInterpreter.jl — interpreter used for debugging and code analysis
- Profile — built-in profiling tool
- BenchmarkTools.jl — benchmarking package for Julia
- JET.jl — static analysis and code analysis tool
- Cthulhu.jl — interactive tool for examining generated code and type inference
Testing and documentation tools
- Test — built-in unit testing standard library
- Documenter.jl — documentation generator for Julia packages
- Literate.jl — tool for writing Julia code as literate programs
- Aqua.jl — package quality-assurance tool for Julia projects
Scientific computing and mathematics
- JuMP — algebraic modeling language for mathematical optimization
- DifferentialEquations.jl — suite for differential equation solving
- Symbolics.jl — symbolic computing library
- ForwardDiff.jl — automatic differentiation package
- Optim.jl — mathematical optimization package
- Roots.jl — numerical root-finding package
Data science and visualization
- DataFrames.jl — tabular data manipulation library
- CSV.jl — package for reading and writing comma-separated values
- Makie.jl — visualization library
- Plots.jl — plotting front end for Julia
- Gadfly.jl — plotting and data visualization package
- AlgebraOfGraphics.jl — grammar-of-graphics-style visualization library
Machine learning and artificial intelligence
- Flux.jl — machine-learning library
- MLJ.jl — machine-learning framework
- Knet.jl — deep-learning framework
- Turing.jl — probabilistic programming library
- BetaML.jl — machine-learning toolkit
Web and application development
- Genie.jl — web framework for Julia
- HTTP.jl — package for HTTP clients and servers
- Oxygen.jl — web framework for building APIs and web applications
- Dash.jl — Julia interface for Dash applications
Interoperability tools
- PyCall.jl — interface for calling Python from Julia
- PythonCall.jl — interoperability package for Python and Julia
- RCall.jl — interface for calling R from Julia
- JavaCall.jl — interface for calling Java
- CxxWrap.jl — interoperability package for C++
- MATLAB.jl — interface for MATLAB