Open Source Julia Software

Julia Software

Julia Clear Filters

Browse free open source Julia Software and projects below. Use the toggles on the left to filter open source Julia Software by OS, license, language, programming language, and project status.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Cloud tools for web scraping and data extraction Icon
    Cloud tools for web scraping and data extraction

    Deploy pre-built tools that crawl websites, extract structured data, and feed your applications. Reliable web data without maintaining scrapers.

    Automate web data collection with cloud tools that handle anti-bot measures, browser rendering, and data transformation out of the box. Extract content from any website, push to vector databases for RAG workflows, or pipe directly into your apps via API. Schedule runs, set up webhooks, and connect to your existing stack. Free tier available, then scale as you need to.
    Explore 10,000+ tools
  • 1
    AlphaZero.jl

    AlphaZero.jl

    A generic, simple and fast implementation of Deepmind's AlphaZero

    Beyond its much publicized success in attaining superhuman level at games such as Chess and Go, DeepMind's AlphaZero algorithm illustrates a more general methodology of combining learning and search to explore large combinatorial spaces effectively. We believe that this methodology can have exciting applications in many different research areas. Because AlphaZero is resource-hungry, successful open-source implementations (such as Leela Zero) are written in low-level languages (such as C++) and optimized for highly distributed computing environments. This makes them hardly accessible for students, researchers and hackers. Many simple Python implementations can be found on Github, but none of them is able to beat a reasonable baseline on games such as Othello or Connect Four. As an illustration, the benchmark in the README of the most popular of them only features a random baseline, along with a greedy baseline that does not appear to be significantly stronger.
    Downloads: 41 This Week
    Last Update:
    See Project
  • 2
    ReverseDiff

    ReverseDiff

    Reverse Mode Automatic Differentiation for Julia

    ReverseDiff is a fast and compile-able tape-based reverse mode automatic differentiation (AD) that implements methods to take gradients, Jacobians, Hessians, and higher-order derivatives of native Julia functions (or any callable object, really). While performance can vary depending on the functions you evaluate, the algorithms implemented by ReverseDiff generally outperform non-AD algorithms in both speed and accuracy.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 3
    InteractiveViz.jl

    InteractiveViz.jl

    Interactive visualization tools for Julia

    Julia already has a rich set of plotting tools in the form of the Plots and Makie ecosystems, and various backends for these. So why another plotting package? InteractiveViz is not a replacement for Plots or Makie, but rather a graphics pipeline system developed on top of Makie. It has a few objectives. To provide a simple API to visualize large or possibly infinite datasets (tens of millions of data points) easily. To enable interactivity, and be responsive even with large amounts of data. To render perceptually accurate summaries at large scale, allowing drill down to individual data points. To allow generation of data points on demand through a graphics pipeline, requiring computation only at a level of detail appropriate for display at the viewing resolution. Additional data points can be generated on demand when zooming or panning. This package was partly inspired by the excellent Datashader package available in the Python ecosystem.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 4
    MATLAB.jl

    MATLAB.jl

    Calling MATLAB in Julia through MATLAB Engine

    The MATLAB.jl package provides an interface for using MATLAB® from Julia using the MATLAB C api. In other words, this package allows users to call MATLAB functions within Julia, thus making it easy to interoperate with MATLAB from the Julia language. You cannot use MATLAB.jl without having purchased and installed a copy of MATLAB® from MathWorks. This package is available free of charge and in no way replaces or alters any functionality of MathWorks's MATLAB product.
    Downloads: 13 This Week
    Last Update:
    See Project
  • Reach Your Audience with Rise Vision, the #1 Cloud Digital Signage Software Solution Icon
    Reach Your Audience with Rise Vision, the #1 Cloud Digital Signage Software Solution

    K-12 Schools, Higher Education, Businesses, Restaurants

    Rise Vision is the #1 digital signage company, offering easy-to-use cloud digital signage software compatible with any player across multiple screens. Forget about static displays. Save time and boost sales with 500+ customizable content templates for your screens. If you ever need help, get free training and exceptionally fast support.
    Learn More
  • 5
    Trixi.jl

    Trixi.jl

    Trixi.jl: Adaptive high-order numerical simulations of hyperbolic PDEs

    Trixi.jl is a numerical simulation framework for hyperbolic conservation laws written in Julia. A key objective for the framework is to be useful to both scientists and students. Therefore, next to having an extensible design with a fast implementation, Trixi.jl is focused on being easy to use for new or inexperienced users, including the installation and postprocessing procedures.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 6
    Clang.jl

    Clang.jl

    C binding generator and Julia interface to libclang

    This package provides a Julia language wrapper for libclang: the stable, C-exported interface to the LLVM Clang compiler. The libclang API documentation provides background on the functionality available through libclang, and thus through the Julia wrapper. The repository also hosts related tools built on top of libclang functionality.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 7
    Julia VS Code

    Julia VS Code

    Julia extension for Visual Studio Code

    This VS Code extension provides support for the Julia programming language. We build on Julia’s unique combination of ease-of-use and performance. Beginners and experts can build better software more quickly, and get to a result faster. With a completely live environment, Julia for VS Code aims to take the frustration and guesswork out of programming and put the fun back in. A hybrid “canvas programming” style combines the exploratory power of a notebook with the productivity and static analysis features of an IDE. VS Code is a powerful editor and customizable to your heart’s content (though the defaults are pretty good too). It has power features like multiple cursors, fuzzy file finding and Vim keybindings.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 8
    LinearSolve.jl

    LinearSolve.jl

    High-Performance Unified Interface for Linear Solvers in Julia

    LinearSolve.jl is a unified interface for the linear solving packages of Julia. It interfaces with other packages of the Julia ecosystem to make it easy to test alternative solver packages and pass small types to control algorithm swapping. It also interfaces with the ModelingToolkit.jl world of symbolic modeling to allow for automatically generating high-performance code. Performance is key: the current methods are made to be highly performant on scalar and statically sized small problems, with options for large-scale systems. If you run into any performance issues, please file an issue.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 9
    InfiniteOpt.jl

    InfiniteOpt.jl

    An intuitive modeling interface for infinite-dimensional optimization

    A JuMP extension for expressing and solving infinite-dimensional optimization problems. InfiniteOpt.jl provides a general mathematical abstraction to express and solve infinite-dimensional optimization problems (i.e., problems with decision functions). Such problems stem from areas such as space-time programming and stochastic programming. InfiniteOpt is meant to facilitate intuitive model definition, automatic transcription into solvable models, permit a wide range of user-defined extensions/behavior, and more.
    Downloads: 9 This Week
    Last Update:
    See Project
  • AI-First Supply Chain Management Icon
    AI-First Supply Chain Management

    Supply chain managers, executives, and businesses seeking AI-powered solutions to optimize planning, operations, and decision-making across the supply

    Logility is a market-leading provider of AI-first supply chain management solutions engineered to help organizations build sustainable digital supply chains that improve people’s lives and the world we live in. The company’s approach is designed to reimagine supply chain planning by shifting away from traditional “what happened” processes to an AI-driven strategy that combines the power of humans and machines to predict and be ready for what’s coming. Logility’s fully integrated, end-to-end platform helps clients know faster, turn uncertainty into opportunity, and transform the supply chain from a cost center to an engine for growth.
    Learn More
  • 10
    ApproxFun.jl

    ApproxFun.jl

    Julia package for function approximation

    ApproxFun is a package for approximating functions. It is in a similar vein to the Matlab package Chebfun and the Mathematica package RHPackage. The ApproxFun Documentation contains detailed information, or read on for a brief overview of the package. The documentation contains examples of usage, such as solving ordinary and partial differential equations. The ApproxFun Examples repo contains many examples of using this package, in Jupyter notebooks and Julia scripts. Note that this is independently maintained, so it might not always be in sync with the latest version of ApproxFun. We recommend checking the examples in the documentation first, as these will always be compatible with the latest version of the package.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 11
    CBinding.jl

    CBinding.jl

    Automatic C interfacing for Julia

    Use CBinding.jl to automatically create C library bindings with Julia at runtime. In order to support the fully automatic conversion and avoid name collisions, the names of C types or functions are mangled a bit to work in Julia. Therefore everything generated by CBinding.jl can be accessed with the c"..." string macro to indicate that it lives in C-land. As an example, the function func above is available in Julia as c"func". It is possible to store the generated bindings to more user-friendly names (this can sometimes be automated, see the j option). Placing each C declaration in its own macro helps when doing this manually.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 12
    CImGui

    CImGui

    Julia wrapper for cimgui

    This package provides a Julia language wrapper for cimgui: a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui Dear ImGui. Dear ImGui is mainly for creating content creation tools and visualization / debug tools. You could browse Gallery to get an idea of its use cases.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 13
    Mixed-effects models in Julia

    Mixed-effects models in Julia

    A Julia package for fitting (statistical) mixed-effects models

    This package defines linear mixed models (LinearMixedModel) and generalized linear mixed models (GeneralizedLinearMixedModel). Users can use the abstraction for statistical model API to build, fit (fit/fit!), and query the fitted models. A mixed-effects model is a statistical model for a response variable as a function of one or more covariates. For a categorical covariate the coefficients associated with the levels of the covariate are sometimes called effects, as in "the effect of using Treatment 1 versus the placebo". If the potential levels of the covariate are fixed and reproducible, e.g. the levels for Sex could be "F" and "M", they are modeled with fixed-effects parameters. If the levels constitute a sample from a population, e.g. the Subject or the Item at a particular observation, they are modeled as random effects.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 14
    MultivariatePolynomials.jl

    MultivariatePolynomials.jl

    Multivariate polynomials interface

    MultivariatePolynomials.jl is an implementation-independent library for manipulating multivariate polynomials. It defines abstract types and an API for multivariate monomials, terms, and polynomials and gives default implementation for common operations on them using the API. On the one hand, This packages allows you to implement algorithms on multivariate polynomials that will be independant on the representation of the polynomial that will be chosen by the user. On the other hand, it allows the user to easily switch between different representations of polynomials to see which one is faster for the algorithm that he is using.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 15
    ProbNumDiffEq.jl

    ProbNumDiffEq.jl

    Probabilistic Numerical Differential Equation solvers via Bayesian fil

    ProbNumDiffEq.jl provides probabilistic numerical ODE solvers to the DifferentialEquations.jl ecosystem. The implemented ODE filters solve differential equations via Bayesian filtering and smoothing. The filters compute not just a single point estimate of the true solution, but a posterior distribution that contains an estimate of its numerical approximation error.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 16
    Surrogates.jl

    Surrogates.jl

    Surrogate modeling and optimization for scientific machine learning

    A surrogate model is an approximation method that mimics the behavior of a computationally expensive simulation. In more mathematical terms: suppose we are attempting to optimize a function f(p), but each calculation of f is very expensive. It may be the case we need to solve a PDE for each point or use advanced numerical linear algebra machinery, which is usually costly. The idea is then to develop a surrogate model g which approximates f by training on previous data collected from evaluations of f.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 17
    DSP.jl

    DSP.jl

    Filter design, periodograms, window functions

    DSP.jl provides a number of common digital signal processing routines in Julia.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 18
    DifferentialEquations.jl

    DifferentialEquations.jl

    Multi-language suite for high-performance solvers of equations

    This is a suite for numerically solving differential equations written in Julia and available for use in Julia, Python, and R. The purpose of this package is to supply efficient Julia implementations of solvers for various differential equations. The well-optimized DifferentialEquations solvers benchmark as some of the fastest implementations, using classic algorithms and ones from recent research which routinely outperform the “standard” C/Fortran methods, and include algorithms optimized for high-precision and HPC applications. At the same time, it wraps the classic C/Fortran methods, making it easy to switch over to them whenever necessary. Solving differential equations with different methods from different languages and packages can be done by changing one line of code, allowing for easy benchmarking to ensure you are using the fastest method possible.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 19
    HTTP.jl

    HTTP.jl

    HTTP for Julia

    HTTP.jl is a pure Julia implementation of the HTTP protocol, providing tools for building HTTP clients and servers. It enables users to send requests, handle responses, and construct REST APIs or web services entirely in Julia. HTTP.jl supports TLS, cookies, headers, streaming, and middleware, making it suitable for both simple scripting and full-scale web service development.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 20
    MIRT.jl

    MIRT.jl

    MIRT: Michigan Image Reconstruction Toolbox (Julia version)

    MIRT.jl is a collection of Julia functions for performing image reconstruction and solving related inverse problems. It is very much still under construction, although there are already enough tools to solve useful problems like compressed sensing MRI reconstruction. Trying the demos is a good way to get started. The documentation is even more still under construction.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 21
    ModelingToolkit.jl

    ModelingToolkit.jl

    Modeling framework for automatically parallelized scientific ML

    ModelingToolkit.jl is a modeling language for high-performance symbolic-numeric computation in scientific computing and scientific machine learning. It then mixes ideas from symbolic computational algebra systems with causal and acausal equation-based modeling frameworks to give an extendable and parallel modeling system. It allows for users to give a high-level description of a model for symbolic preprocessing to analyze and enhance the model. Automatic symbolic transformations, such as index reduction of differential-algebraic equations, make it possible to solve equations that are impossible to solve with a purely numeric-based technique. ModelingToolkit.jl is a symbolic-numeric modeling package. Thus it combines some of the features from symbolic computing packages like SymPy or Mathematica with the ideas of equation-based modeling systems like the causal Simulink and the acausal Modelica.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 22
    The PyPlot module for Julia

    The PyPlot module for Julia

    Plotting for Julia based on matplotlib.pyplot

    This module provides a Julia interface to the Matplotlib plotting library from Python, and specifically to the matplotlib.pyplot module. PyPlot uses the Julia PyCall package to call Matplotlib directly from Julia with little or no overhead (arrays are passed without making a copy). (See also PythonPlot.jl for a version of PyPlot.jl using the alternative PythonCall.jl package.) This package takes advantage of Julia's multimedia I/O API to display plots in any Julia graphical backend, including as inline graphics in IJulia. Alternatively, you can use a Python-based graphical Matplotlib backend to support interactive plot zooming etcetera.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 23
    ThreadsX.jl

    ThreadsX.jl

    Parallelized Base functions

    Add prefix ThreadsX. to functions from Base to get some speedup, if supported. The reduce-based functions support any collections that implement SplittablesBase.jl interface including arrays, Dict, Set, and iterator transformations. In particular, these functions support iterator comprehension. ThreadsX.jl is aiming at providing API compatible with Base functions to easily parallelize Julia programs. All functions that exist directly under ThreadsX namespace are public API and they implement a subset of API provided by Base. Everything inside ThreadsX.Implementations is an implementation detail. The public API functions of ThreadsX expect that the data structure and function(s) passed as argument are "thread-friendly" in the sense that operating on distinct elements in the given container from multiple tasks in parallel is safe. For example, ThreadsX.sum(f, array) assumes that executing f(::eltype(array)) and accessing elements as in array[i] from multiple threads is safe.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 24
    CategoricalArrays.jl

    CategoricalArrays.jl

    Arrays for working with categorical data

    This package provides tools for working with categorical variables, both with unordered (nominal variables) and ordered categories (ordinal variables), optionally with missing values.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 25
    Comonicon

    Comonicon

    Your best CLI generator in JuliaLang

    Roger's magic book for command line interfaces.
    Downloads: 5 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next