Julia libraries
ML
- Flux - Elegant approach to machine learning. It's a 100% pure-Julia stack, and provides lightweight abstractions on top of Julia's native GPU and AD support. (Flux Model Zoo) (Deep Learning with Flux.jl) (Web)
- MLJ - Julia machine learning framework. (Tutorial) (HN)
- MLJTime - MLJ compatible Julia toolbox for learning with time series.
- MLJTuning - Hyperparameter optimization for MLJ machine learning models.
- DynamicExpressions.jl - Ridiculously fast dynamic expressions.
- Knet - Deep learning framework implemented in Julia by Deniz Yuret and collaborators.
- TensorCast.jl - Lets you work with many-dimensional arrays in index notation, by defining a few macros.
- SDDP.jl - Stochastic Dual Dynamic Programming in Julia.
- ONNX - Read ONNX graphs in Julia.
- ReversePropagation.jl - Julia package for reverse propagation along a syntax tree, using source-to-source transformation via ModelingToolkit.jl.
- Metalhead - Computer vision models for Flux.
- ChainRules - Forward and reverse mode automatic differentiation primitives for Julia Base + StdLibs.
- MiniFastai - Mini-version of fast.ai in Julia.
- ReservoirComputing.jl - Reservoir computing utilities for scientific machine learning (SciML).
- GeometricFlux.jl - Geometric deep learning library for Flux.
- FluxTraining.jl - Flexible neural net training library inspired by fast.ai. (Docs)
- GalacticOptim.jl - Local, global, and beyond optimization for scientific machine learning (SciML).
- DiffEqGPU - GPU-acceleration routines for DifferentialEquations.jl and the broader SciML scientific machine learning ecosystem.
- Avalon - Deep learning library in Julia with focus on high performance and interoperability with existing DL frameworks.
- KernelDensity.jl - Kernel density estimators for Julia.
- Reinforce - Abstractions, algorithms, and utilities for reinforcement learning in Julia.
- Augmentor - Fast image augmentation library in Julia for machine learning.
- DiffEqSensitivity.jl - Sensitivity analysis for scientific machine learning (SciML).
- TensorCore.jl - Lightweight package for sharing tensor-algebra definitions.
- LowRankModels.jl - Julia package for modeling and fitting generalized low rank models.
- MADS - Integrated high-performance computational framework for data/model/decision analyses.
- Agents.jl - Agent-based modeling framework in Julia.
- Mitosis.jl - Incorporate discrete and continuous time Markov processes as building blocks into probabilistic graphical models.
- BAT - Bayesian analysis toolkit in Julia.
- MLJFlux - Interface to the deep learning package Flux.jl from the MLJ.jl toolbox.
- Transformers.jl - Julia Implementation of Transformer models.
- Cambrian.jl - Evolutionary Computation framework.
- Nonconvex - Toolbox for non-convex constrained optimization.
- ReinforcementLearningEnvironments.jl - One-stop package for different reinforcement learning environments.
- MLDatasets.jl - Package for accessing common Machine Learning datasets in Julia.
- Diffractor - Next-generation, compiler-based AD system for Julia. (HN)
- GpABC.jl - Provides algorithms for likelihood - free parameter inference and model selection using Approximate Bayesian Computation (ABC).
- ManifoldDiffEq.jl - Differential equations on manifolds.
- Cthulhu.jl - Can help you debug type inference issues. (HN)
- ChemometricsTools.jl - Collection of tools for chemometrics and machine learning written in Julia.
- Lathe.jl - Inclusive Predictive Learning module for Julia.
- TuringModels - Implementations of the models from the Statistical Rethinking book with Turing.jl.
- TensorKit.jl - Julia package for large-scale tensor computations, with a hint of category theory.
- SymbolicRegression.jl - Distributed High-Performance symbolic regression in Julia.
- NeuralPDE - Physics-Informed Neural Networks (PINN) and Deep BSDE Solvers of Differential Equations for Scientific Machine Learning (SciML) accelerated simulation.
- SweepContractor.jl - Julia package for the contraction of tensor networks using the sweep-line-based contraction algorithm.
- CellMLToolkit.jl - Julia library that connects CellML models to the Scientific Julia ecosystem.
- LossFunctions - Julia package of loss functions for machine learning.
- FluxMPI.jl - MultiGPU / MultiNode Training of Flux Models.
- MLJTuringInterface - Interface for Turing models with MLJ.
- MLFlowClient - Julia client for MLFlow.
- LinearRegression
- KernelFunctions - Julia package for kernel functions for machine learning.
- NLPModels - Data Structures for Optimization Models.
- MLDataPattern - Utility package for subsetting, resampling, iteration, and partitioning of various types of data sets in Machine Learning.
- SymPy - Julia interface to SymPy via PyCall.
- Turkie - Turing + Makie.
- TuringGLM - Makes easy to specify Bayesian Generalized Linear Models using the formula syntax and returns an instantiated Turing model.
- Bijectors.jl - Implementation of normalising flows and constrained random variable transformations.
- DistributionsAD.jl - Automatic differentiation of Distributions using Tracker, Zygote, ForwardDiff and ReverseDiff.
- Libtask - Tape based task copying in Turing.
- MLUtils - Utilities and abstractions for Machine Learning tasks.
- OMEinsum - Differentiable Tensor Networks.
- Genify.jl - Automatically transforms Julia methods to Gen functions via staged compilation.
- PDDL.jl - Julia parser, interpreter, and compiler interface for the Planning Domain Definition Language (PDDL).
- SymbolicPlanners.jl - Symbolic planners for problems and domains specified in PDDL.
- SymbolicMDPs.jl - Wraps the PDDL.jl interface for PDDL domains and problems within the POMDPs.jl interface for Markov decision processes (MDPs).
- Enzyme.jl - Julia bindings for the Enzyme automatic differentiator.
- Jax.jl - Wraps some functionality of Jax in Julia.
- MIPVerify.jl - Evaluating Robustness of Neural Networks with Mixed Integer Programming.
- HQDL.jl - High-quality operators for machine learning.
- OperatorLearning.jl - Provides Layers for the learning of (nonlinear) operators in order to solve parametric PDEs.
- MultistartOptimization.jl - Multistart optimization methods in Julia.
- Hyperopt - Hyperparameter optimization in Julia.
- ShapML - Julia package for interpretable machine learning with stochastic Shapley values.
- DiffEqCallbacks.jl - Library of callbacks for extending the solvers of DifferentialEquations.jl.
- DynamicPPL.jl - Implementation of domain-specific language (DSL) for dynamic probabilistic programming.
- FluxArchitectures - Complex neural network examples for Flux.jl.
- StochasticDiffEq.jl - Solvers for stochastic differential equations which connect with the scientific machine learning (SciML) ecosystem.
- DiffEqOperators.jl - Linear operators for discretizations of differential equations and scientific machine learning (SciML).
- NeuralAttentionlib.jl - Reusable functionality for defining custom attention/transformer layers.
- Surrogates.jl - Surrogate modeling and optimization for scientific machine learning (SciML).
- XGBoost.jl - eXtreme Gradient Boosting in Julia.
- SimpleNeRF
- CFMMRouter - Fast solver for the CFMM Routing problem.
- ExplainableAI.jl - XAI in Julia using Flux.
- NoiseRobustDifferentiation.jl - Total Variation Regularized Numerical Differentiation.
- MethodOfLines.jl - Automatic Finite Difference PDE solving with Julia SciML.
- Yota.jl - Reverse-mode automatic differentiation in Julia.
- DLPack.jl - Julia wrapper for DLPack.
- ConstraintLearning - Julia package for people that love to learn new things about constraints.
- FluxPrune - Pruning framework and methods for Flux.
- ReactiveMP.jl - Julia package for automatic Bayesian inference on a factor graph with reactive message passing.
- TensorNetworkAD - Algorithms that combine tensor network methods with automatic differentiation.
- BetaML - Beta Machine Learning Toolkit.
- Lux - Explicitly Parameterized Neural Networks in Julia.
- MuseInference.jl - Fast approximate high-dimensional hierarchical Bayesian inference.
- InferOpt.jl - Combinatorial optimization layers for machine learning pipelines.
- ChainPlots - Visualization for Flux.Chain neural networks.
- FastDEQ - Deep Equilibrium Networks (but faster!).
- Baysor - Bayesian Segmentation of Spatial Transcriptomics Data.
- MLJLinearModels.jl - Generalized Linear Regressions Models (penalized regressions, robust regressions, ...).
- BipartiteMatching.jl - Fast and scalable max cardinality matching for bipartite graphs.
- DeepQLearning - Implementation of the Deep Q-learning algorithm to solve MDPs.
- DiffRules - Simple shared suite of common derivative definitions.
- HuggingFaceHub.jl - Julia package to interact with the Hugging Face Hub.
- Hopfields.jl - Modern Hopfield layer implementations in Julia.
- SciML Docs (Code)
- Kinetic.jl - Universal modeling and simulation of fluid dynamics upon machine learning.
- SymbolicNumericIntegration.jl - Hybrid symbolic/numerical integration package that works on the Julia Symbolics expressions.
- BlockSystems.jl - Express input-output-systems / block-systems with the help of ModelingToolkit.jl.
- Metaheuristics - High performance metaheuristics for optimization purely coded in Julia.
- Integrals.jl - Common interface for quadrature and numerical integration for the SciML scientific machine learning organization.
- SymbolicControlSystems - C-code generation and an interface between ControlSystems.jl and SymPy.j.
- RvSpectML - Facilitate the analysis of stellar spectroscopic times series.
- LsqFit.jl - Simple curve fitting in Julia.
- TintiNet.jl - Implementation of the TintiNet architecture for Julia.
- MixedModels - Julia package for fitting (statistical) mixed-effects models. (Tweet)
- Finch - Sparse, Compressed, and Structured Tensor Processing.
- Sophon - Neural networks and neural operators for physics-informed machine learning.
- GenericTensorNetworks - Generic tensor networks for solution space properties.
- DifferentiableFactorizations - Differentiable matrix factorizations using ImplicitDifferentiation.jl.
- TensorOperations.jl - Fast tensor operations using a convenient Einstein index notation.
- MarkovKernels.jl - Marginal distributions and Markov kernels that play nice with each other for the purpose of Bayesian state estimation.
- ProbNumDiffEq.jl - Probabilistic Numerical Differential Equation solvers via Bayesian filtering and smoothing.
- Conductor.jl - Platform for quickly and flexibly building high-performance, multi-scale neuronal network models in Julia.
- Fluxperimental.jl - Experimental features for Flux.jl.
- MadDiff.jl - Automatic differentiation and algebraic modeling package.
- ScientificTypes.jl - API for dispatching on the "scientific" type of data instead of the machine type.
- DataAugmentation.jl - Flexible data augmentation library for machine and deep learning.
- DiffEqParamEstim.jl - Easy scientific machine learning (SciML) parameter estimation with pre-built loss functions.
- GaussianMixtures - Large scale Gaussian Mixture Models.
- ImplicitGlobalGrid.jl - Almost trivial distributed parallelization of stencil-based GPU and CPU applications on a regular staggered grid.
- MetaLearning - Learning to learn fast using Flux.jl.
- ForwardDiffChainRules.jl
- tinyrocm.jl - Minimal implementation of AMDGPU ROCm programming in Julia from scratch.
- DiffEqNoiseProcess.jl - Library of noise processes for stochastic systems like stochastic differential equations (SDEs) and other systems.
- LearnAPI.jl - Julia interface for training and applying models in machine learning and statistics.
- SimpleNonlinearSolve.jl - Fast and simple nonlinear solvers for the SciML common interface.
- MultiObjectiveAlgorithms.jl - Collection of algorithms for multi-objective optimization.
- NNlib.jl - Neural Network primitives with multiple backends.
- NonlinearSolve.jl - Fast implementations of root finding algorithms in Julia that satisfy the SciML common interface.
- DiffEqProblemLibrary.jl - Library of premade problems for examples and testing differential equation solvers and other SciML scientific machine learning tools.
- QuasiMonteCarlo.jl - Lightweight package for generating Quasi-Monte Carlo (QMC) samples using various different methods.
- DeconvOptim.jl - Multi-dimensional, high performance deconvolution framework written in Julia Lang for CPUs and GPUs.
- SciMLBenchmarks - Benchmarks for scientific machine learning (SciML) software, scientific AI, and (differential) equation solvers.
Math
- DifferentialEquations - Julia suite for high-performance solvers of differential equations.
- DiffEqDocs - Documentation for the DiffEq differential equations and scientific machine learning (SciML) ecosystem.
- IterativeSolvers - Iterative algorithms for solving linear systems, eigensystems, and singular value problems.
- JuMP - Modeling language for Mathematical Optimization (linear, mixed-integer, conic, semidefinite, nonlinear). (Article)
- Multivariate Statistics - Julia package for multivariate statistics and data analysis (e.g. dimension reduction).
- RandomizedLinAlg.jl - Randomized algorithms for numerical linear algebra in Julia.
- Grassmann.jl - ⟨Leibniz-Grassmann-Clifford⟩ differential geometric algebra / multivector simplicial complex.
- PencilFFTs.jl - Fast Fourier transforms of MPI-distributed Julia arrays.
- SurrealNumbers - Implementation of Conway's Surreal Numbers.
- Manopt.jl - Optimization on Manifolds in Julia.
- ApproxFun.jl - Julia package for function approximation.
- ReverseDiff - Reverse Mode Automatic Differentiation for Julia.
- StatsFuns.jl - Mathematical functions related to statistics.
- Catlab.jl - Framework for applied category theory in the Julia language.
- Symata.jl - Symbolic mathematics language.
- BlackBoxOptim - Black-box optimization for Julia.
- MappedArrays - Lazy in-place transformations of arrays.
- Pingouin.jl - Reimplementation of Raphaelvallat's Pingouin in Julia.
- StatsModels - Specifying, fitting, and evaluating statistical models in Julia.
- MathOptInterface - Abstraction layer for mathematical optimization solvers.
- TemporalGPs - Fast inference for Gaussian processes in problems involving time.
- FiniteDifferences.jl - Estimates derivatives with finite differences.
- IncrementalInference.jl - Incremental non-parametric (and parametric) solution to factor graphs.
- FiniteDiff - Fast non-allocating calculations of gradients, Jacobians, and Hessians with sparsity support.
- LazySets.jl - Julia package for calculus with convex sets.
- Tullio.jl - Flexible einsum macro. Understands many array operations written in index notation.
- Stheno - Probabilistic Programming with Gaussian processes in Julia.
- MultiFloats.jl - Fast extended-precision floating-point arithmetic for Julia.
- RecursiveFactorization - Package that collects various recursive matrix factorization algorithms.
- Nemo - Computer algebra package for the Julia programming language. It aims to cover commutative algebra, number theory and group theory.
- AbstractAlgebra - Pure Julia package for computational abstract algebra.
- Hecke - Computational algebraic number theory.
- ChainRulesCore - Provides a light-weight dependency for defining sensitivities for functions in your packages.
- Calculus.jl - Calculus functions in Julia.
- TSML - Package for time series data processing, classification, clustering, and prediction.
- Metatheory.jl - General purpose metaprogramming and algebraic computation library for the Julia programming language.
- Symbolics.jl - Fast and modern CAS for a fast and modern language. (Forum Post) (HN)
- SymbolicSAT - Extends SymbolicUtils expression simplification with a theorem prover.
- Interpolations - Fast, continuous interpolation of discrete datasets in Julia.
- Bootstrap.jl - Statistical bootstrapping library for Julia.
- DynamicalSystems.jl - Award-winning Julia software library for the exploration of chaos and nonlinear dynamics.
- StatsBase.jl - Basic statistics for Julia.
- Infinity.jl - Representation of infinity in Julia.
- LogarithmicNumbers.jl - Logarithmic number system for Julia.
- MCMCChains.jl - Types and utility functions for summarizing Markov chain Monte Carlo simulations.
- NearestNeighbors.jl - High performance nearest neighbor data structures and algorithms for Julia.
- MHLib.jl - Toolbox for Metaheuristics and Hybrid Optimization Methods.
- Erdos - Library for graph analysis written Julia.
- LinearSolvers
- HighDimPDE.jl - Julia package that breaks down the curse of dimensionality in solving non local, non linear PDEs.
- Polynomials.jl - Polynomial manipulations in Julia.
- Roots - Root finding functions for Julia.
- LatexPrint - Print Julia objects in LaTeX form.
- Distances - Julia package for evaluating distances (metrics) between vectors.
- Rewrite.jl - Efficient symbolic term rewriting engine.
- Simplify.jl - Algebraic simplification in Julia.
- InfiniteOpt.jl - Intuitive modeling interface for infinite-dimensional optimization problems.
- TimeSeries.jl - Time series toolkit for Julia.
- Algebraic Multigrid - Lets you solve sparse linear systems using Algebraic Multigrid (AMG).
- MetaGraphs - Graph data structures with multiple heterogeneous metadata for Graphs.jl.
- CliffordAlgebras.jl - Fast and lightweight Julia package for Clifford and geometric algebras.
- Oscar.jl - Computer algebra system which combines the capabilities of four cornerstone systems: GAP, Polymake, Antic and Singular.
- TaylorSeries.jl - Julia package for Taylor polynomial expansions in one or more independent variables.
- Causalinference.jl - Julia package for causal inference, graphical models and structure learning.
- Bridge.jl - Statistical toolbox for diffusion processes and stochastic differential equations. Named after the Brownian Bridge.
- Kalman - Flexible filtering and smoothing in Julia.
- CombinatorialSpaces.jl - Simplicial sets and other combinatorial models of geometric spaces.
- PrettyNumbers.jl - Pretty print numbers in Julia.
- ManifoldsBase.jl - Basic interface for manifolds in Julia.
- HypergeometricFunctions.jl - Julia package for calculating hypergeometric functions.
- SingularIntegralEquations.jl - Julia package for solving singular integral equations.
- AbstractGPs - Abstract types and methods for Gaussian Processes.
- AbstractAlgebra - Generic abstract algebra functionality in pure Julia (no C dependencies).
- StateSpaceModels.jl - Julia package for time-series analysis using state-space models.
- CalculusWithJulia - Provide notes and features for using Julia to address typical problems from the undergraduate calculus sequence.
- StatsPlots - Statistical plotting recipes for Plots.jl.
- FixedPointDecimals - Julia fixed-point decimals built from integers.
- AlgebraOfGraphics - Combine ingredients for a plot.
- MonteCarloMeasurements - Propagation of distributions by Monte-Carlo sampling: Real number types with uncertainty represented by samples.
- DifferentialDynamicProgramming - Package for solving Differential Dynamic Programming and trajectory optimization problems.
- LowLevelParticleFilters - Simple particle/kalman filtering, smoothing and parameter estimation.
- AbstractPPL.jl - Common types and interfaces for probabilistic programming.
- PiecewiseLinearOpt - Solve optimization problems containing piecewise linear functions.
- FixedPointNumbers - Implements fixed-point number types.
- OnlineStats.jl - Online Algorithms for Statistics, Models, and Big Data Viz.
- Survival.jl - Survival analysis in Julia.
- StatsKit.jl - Convenience meta-package to load essential packages for statistics.
- Multivariate Polynomials - Interface for manipulating multivariate polynomials.
- Krylov.jl - Julia Basket of Hand-Picked Krylov Methods.
- SuiteSparseGraphBLAS.jl - Fast, general sparse linear algebra and graph computation package, based on SuiteSparse:GraphBLAS.
- SpecialFunctions.jl - Special mathematical functions in Julia.
- RandomVariables - Julia package for random variables, some transformations and probabilities.
- Sherlogs.jl - Number format that inspects your code by logging the arithmetic results.
- GeometryBasics.jl - Basic geometry types.
- Forecast - Julia package containing utilities intended for Time Series analysis.
- BSplines - Data types and functions for working with B-splines as a means to approximate real functions.
- BasicBSpline.jl - Basic (mathematical) operations for B-spline functions and related things with julia.
- FastGaussQuadrature.jl - Julia package for Gaussian quadrature.
- PolyChaos - Orthogonal Polynomials, Quadrature, and Polynomial Chaos.
- ParallelRandomFields.jl - Efficient multi-XPU parallel random field generator for large 2D and 3D problems.
- NaNMath - Julia math built-ins which return NaN and accumulator functions which ignore NaN.
- GenericArpack.jl - Pure Julia translation of the Arpack library for eigenvalues and eigenvectors but for any numeric types.
- QRupdate - Column and row updates to "Q-less" QR decomposition, including stable least-squares solves.
- SummationByPartsOperators.jl - Provably stable discretization techniques with mimetic properties.
- TransformVariables.jl - Transformations to contrained variables from ℝⁿ.
- Trixi.jl - Adaptive high-order numerical simulations of hyperbolic PDEs in Julia.
- ProjectEuler.jl - Package that allows offline access to challenging mathematical problems from Project Euler through Julia's REPL.
- Loess - Local regression.
- StochasticAD - Research package for automatic differentiation of programs containing discrete randomness.
- VectorizedRNG - Vectorized uniform and normal random samplers.
- IrrationalConstants.jl - Defines additional irrationals.
NLP
- NLPModelsJuMP - Create NLPModels with JuMP.
- Spacy.jl - Lightweight wrapper of the amazing spaCy Python package.
Biology
- GeneticVariation - Data structures and algorithms for working with genetic variation.
- BioStructures.jl - Julia package to read, write and manipulate macromolecular structures (particularly proteins).
- MolecularGraph.jl - Graph-based molecule modeling toolkit for cheminformatics.
- FASTX - Parse and process FASTA and FASTQ formatted files of biological sequences.
- Molly.jl - Molecular simulation in Julia.
- DFTK - Density-functional toolkit.
- AtomicGraphNets.jl - Atomic graph models for molecules and crystals in Julia.
- BioAlignments.jl - Sequence alignment tools.
- BioSequences - Biological sequences for the julia language.
- pangraph - Bioinformatic toolkit to align large sets of closely related genomes into a graph data structure.
- GeneDrive.jl - Julia package designed for simulating biological dynamics and control.
- ViennaRNA - Julia interface to the ViennaRNA library for RNA secondary structure prediction and analysis.
- DifferentiableMetabolism.jl - Differentiable constraint-based metabolic models.
- Mendeleev.jl - Julia package for accessing chemical elements data.
Computer Vision
- Flux3D.jl - 3D computer vision library in Julia.
- Rayuela.jl - Implements non-orthogonal multi-codebook quantization methods (MCQ).
- MIRT - Michigan Image Reconstruction Toolbox in Julia.
Physics
- SolidStateDetectors.jl - Julia package for fast 2D and 3D simulation of Solid State Detectors.
- OrdinaryDiffEq.jl - High performance differential equation solvers for ordinary differential equations, including neural ordinary differential equations (neural ODEs) and scientific machine learning (SciML).
- RigidBodyDynamics.jl - Julia implementation of various rigid body dynamics and kinematics algorithms.
Chemistry
- ChemistryFeaturization.jl - Interface for modular, flexible, invertible featurization of atomic structures for machine learning purposes.
- Xtal.jl - Julia library for working with crystal structures and associated data with the goal of making theory development easier.
Graphics
- FreeTypeAbstraction - Draw text into a Matrix.
- Animations - Animations, easings and interpolations for animated visualizations.
- Vulkan - Simplify usage of Vulkan in Julia.
- OpenCL.jl - OpenCL Julia bindings.
- DitherPunk.jl - Dithering algorithms in Julia.
GraphQL
- GraphQLClient.jl - Julia GraphQL client for seamless integration with a server.
CLI
- ArgParse.jl - Package for parsing command-line arguments to Julia programs.
- Comonicon - All terminals are under my command.
- Term.jl - Playing with terminal utilities in Julia.
Web
- Genie - Highly productive Julia web framework. (Docs) (Web) (HN) (Tutorial for hosting a Genie app on JuliaHub)
- Elixir for AWS Lambda
- Diana.jl - GraphQL for Julia.
- WebAPI.jl - Abstraction of two Julia packages: HTTP.jl and JSON3.jl. These abstractions allow you to develop APIs in Julia in a simpler and more readable way.
- WebIO - Bridge between Julia and the Web.
- Blink.jl - Web-based GUIs for Julia.
- Hyperscript - Package for working with HTML, SVG, and CSS in Julia.
- Oxygen - Micro-framework built on top of the HTTP.jl library. (Article) (HN)
- HypertextLiteral.jl - Julia library for the string interpolation of HTML and SVG.
- Pages.jl - Simple way to create and interact with web pages.
- Toolips.jl - Fast, asynchronous, low-memory, full-stack, and reactive web-development framework always written in pure Julia.
- StaticWebPages.jl - Black-box generator for static websites oriented toward academics and personal web-pages.
- HTTPDownloads - Use Downloads.jl as a backend for HTTP.jl.
Test
- ReTest - Testing framework for Julia.
- XUnit.jl - Unit-testing framework for Julia.
- TestEnv - Activate your test environment, so you can use your test dependencies in the REPL.
- ReferenceTests - Utility package for comparing data against reference files.
- HypothesisTests.jl - Hypothesis tests for Julia.
- PropCheck.jl - Simple, thin package for property based testing.
- JCheck - Randomized Property Based Testing for Julia.
DB
- FunSQL - Julia library for compositional construction of SQL queries.
- SparkSQL - Enables Julia programs to work with Apache Spark data using just SQL.
- Redis.jl - Fully-featured Redis client for the Julia programming language.
- Query - Query almost anything in julia.
- DuckDB.jl
- DBInterface.jl - Database interface definitions for Julia.
- SQLREPL.jl - Julia REPL mode for SQL.
- LibPQ - Julia wrapper for libpq.
- SQLStrings - Safe interpolations for SQL query strings.
- Mentat - Super simple caching with ttls.
Error
- ErrorTypes - Rust-like error types in Julia.
- InteractiveErrors.jl - Interactive error messages for the Julia REPL.
- Try.jl - Zero-overhead and debuggable error handling.
- AbbreviatedStackTraces.jl
- Invariants - Julia package for creating composable invariants with helpful error messages.
WASM
- Wasmer.jl - Julia wrapper around the wasmer runtime to run Web Assembly blobs and libraries from Julia.
Quantum
- QuantumInformation - Julia package for numerical computation in quantum information theory.
- ACFlow - Full-Fledged Analytical Continuation Toolkit in Julia.
- Quantum Dynamics - Quantum dynamics simulation environment.
- QuantumClifford.jl - Clifford circuits, graph states, and other quantum Stabilizer formalism tools.
- GreenFunc - Differentiable numerical framework to manipulate multidimensional Green's functions.
- NumericalEFT - Numerical effective field theory toolbox for quantum many-body problem.
- Lehmann - Compact Spectral Representation for Imaginary-time/Matsubara-frequency Green's Functions.
- QuantumSymbolics - Computer algebra tools for symbolic manipulations in quantum mechanics and quantum information.
LaTeX
- LaTeXStrings - Make it easier to type LaTeX equations in string literals in the Julia language.
- MathTeXEngine - Latex math mode engine in pure Julia.
Other
- TimeSeries - Aims to provide a lightweight framework for working with time series data in Julia.
- Plots - Powerful convenience for Julia visualizations and data analysis.
- Makie - High level plotting on the GPU. (Web) (HN)
- FileIO - Main Package for IO, loading all different kind of files.
- GPUArrays - Array operations defined for all kind of GPU backends.
- PackageCompiler - Remove just-in-time compilation overhead from your package and compile it into a system image.
- CUDAdrv - Julia wrapper for the CUDA driver API.
- Devectorize - Provides macros and functions to de-vectorize a vector expression.
- CUDAnative.jl - Julia support for native CUDA programming.
- Julia debugger
- Automa.jl - Julia code generator for regular expressions.
- Gadfly - Plotting and data visualization system written in Julia.
- FastTransforms.jl - Julia package for fast orthogonal polynomial transforms.
- ModelingToolkit.jl - Toolkit for modeling and creating DSLs for Scientific Computing in Julia. (Internals of ModelingToolkit)
- Zygote - Intimate Affection Auditor.
- ForwardDiff.jl - Forward Mode Automatic Differentiation for Julia.
- Omega.jl - Causal, Higher-Order, Probabilistic Programming.
- AutoGrad - Automatic differentiation package for Julia.
- GLM - Generalized linear models in Julia.
- Distributions.jl - Julia package for probability distributions and associated functions.
- Turing.jl - Turing language for probabilistic machine learning and Bayesian statistics. (HN)
- Pretty Tables - Print data in matrices in a human-readable format.
- PyCall.jl - Package to call Python functions from the Julia language.
- Optim.jl - Univariate and multivariate optimization in Julia.
- StaticArrays - Statically sized arrays for Julia.
- Threads - Parallelized Base functions.
- DataStructures.jl - Implements a variety of data structures.
- Literate - Simple package for literate programming in Julia.
- AbstractTrees - Abstract julia interfaces for working with trees.
- Lazy.jl - Provides Julia with the cornerstones of functional programming - lazily-evaluated lists and a large library of functions for working with them.
- BenchmarkTools.jl - Benchmarking framework for the Julia language.
- Dash - Create beautiful, analytic applications in Julia.
- MLStyle.jl - Julia functional programming infrastructures and metaprogramming facilities.
- QuadGK.jl - Adaptive 1d numerical Gauss–Kronrod integration in Julia.
- ClearStacktrace - Visually clarified stack traces for Julia.
- DiffEqFlux.jl - Universal neural differential equations with O(1) backprop, GPUs, and stiff+non-stiff DE solvers.
- Weave - Scientific report generator/literate programming tool for Julia. (Docs) (HN)
- Latexify.jl - Convert julia objects to LaTeX equations, arrays or other environments.
- FFTW.jl - Julia bindings to the FFTW library for fast Fourier transforms.
- InteractiveViz.jl - Interactive visualization tools for Julia.
- UnicodePlots - Advanced Unicode plotting library designed for use in Julia's REPL.
- Revise.jl - Automatically update function definitions in a running Julia session.
- JuliaWebAPI.jl - Julia package for deploying APIs.
- HTTP - HTTP client and server functionality for Julia.
- OptimKit.jl - Blissfully ignorant Julia package for gradient optimization.
- TrajectoryOptimization.jl - Fast trajectory optimization library written in Julia.
- UnderscoreOh.jl - Call graphs as recompilation-free capture-by-value closures.
- Downloads - Provides a single function, download, which provides cross-platform, multi-protocol, in-process download functionality implemented with libcurl.
- Colors - Color manipulation utilities for Julia.
- NiLang.jl - Reversible domain-specific language (DSL) that allow a program to go back to the past. (HN)
- CUDAFolds - Data-parallelism on CUDA using Transducers.jl and for loops (FLoops.jl).
- TheFix.jl - Fix for the most common errors made in the REPL.
- FancyDiagnostics - Enhance your Julia error message experience.
- RandomNumbers - Random Number Generators.
- StaticModules - Statically sized and typed namespace you can use for enclosing julia code and variables without runtime overhead and useable in either the global or local scopes.
- Mustache - Port of mustache.js to julia.
- Publish.jl - Universal document authoring package for Julia.
- SIMD - Explicit SIMD vector operations for Julia.
- ArrayInterface - Designs for new Base array interface primitives.
- LazyArrays - Lazy arrays and linear algebra in Julia.
- Oceananigans.jl - Fast and friendly fluid dynamics on CPUs and GPUs.
- LinearFractional - Linear fractional programming with Julia and JuMP.
- MeasureTheory - Package for building and reasoning about measures.
- Restructured BNF - Aims at the generating parsers without requiring redundant coding from programmers.
- GeneralizedGenerated - Enables the generalized generated functions. Specifically, it supports closure constructions in generated functions.
- DiffEqBase.jl - Lightweight Base library for shared types and functionality for defining differential equation and scientific machine learning (SciML) problems.
- LRUCache.jl - Provides a thread-safe implementation of a Least Recently Used (LRU) Cache for Julia.
- Cxx.jl - Julia C++ Interface.
- Cascadia - CSS Selector library in Julia.
- JSON3 - JSON package for Julia. Focused on speed and slick struct mapping.
- JSON.jl - JSON parsing and printing.
- TableIO - Glue package for reading and writing tabular data.
- JET.jl - Experimental type checker for Julia, no need for additional type annotations. (HN)
- LoopVectorization - Macro(s) for vectorizing loops.
- LinearOperators.jl - Linear Operators for Julia.
- Images.jl - Image library for Julia.
- Match.jl - Advanced Pattern Matching for Julia.
- PlutoUI.jl - Tiny package to make HTML input tag a bit more Julian.
- Fermionic - Toolkit for fermonic quantum computation in Julia.
- FileTrees.jl - Parallel file processing made easy.
- DataFramesMeta.jl - Metaprogramming tools for DataFrames.jl objects.
- Documenter - Documentation generator for Julia.
- Memoization.jl - Easily and efficiently memoize any function in Julia.
- Memoize.jl - Easy memoization for Julia.
- SymbolicUtils.jl - Expression rewriting and simplification.
- Gridap - Grid-based approximation of partial differential equations in Julia.
- BlockArrays.jl - BlockArrays for Julia.
- InteractiveAudio - Julia package to generate and play audio while dynamically changing the underlying code in real time.
- GFlops.jl - Estimate the absolute performance of a piece of Julia code.
- VectorizationBase - Library providing basic SIMD support in Julia.
- InplaceOps.jl - Convenient macros for in-place matrix operations in Julia.
- PGFPlotsX - Julia package to generate publication quality figures using the LaTeX library PGFPlots.
- AcceleratedArrays.jl - Arrays with acceleration indices.
- FLoops - Fast sequential, threaded, and distributed for-loops for Julia—fold for humans.
- ParallelStencil - Package for writing high-level code for parallel high-performance stencil computations that can be deployed on both GPUs and CPUs.
- Circuitscape - Algorithms from circuit theory to predict connectivity in heterogeneous landscapes. (Web)
- CategoricalArrays.jl - Arrays for working with categorical data (both nominal and ordinal).
- Infiltrator.jl - Provides a macro called @infiltrate, which sets a "breakpoint" in a local context.
- Luxor - Julia package for drawing simple static vector graphics.
- SnoopCompile - Making packages work faster with more extensive precompilation.
- StaticCompiler - Compiles Julia code to a standalone library.
- Stipple - Reactive UI library for interactive data applications with pure Julia.
- PkgEval.jl - Evaluate Julia packages.
- DataDeps - Reproducible data setup for reproducible science.
- TreeView - Draw Julia syntax trees as a graph.
- ControlSystems.jl - Control Systems Toolbox for Julia.
- MatchCore - Minimal implementation of optimized pattern matching.
- ManualDispatch - Avoid method dispatch at runtime.
- ExprTools - Light-weight expression manipulation tools.
- ConfParser - Julia package for parsing configuration files.
- TimerOutputs - Formatted output of timed sections in Julia.
- Actors.jl - Concurrent computing in Julia with actors.
- DaemonMode - Client-Daemon workflow to run faster scripts in Julia.
- CxxWrap - Package to make C++ libraries available in Julia.
- Cassette - Lets you easily extend the Julia language by directly injecting the Julia compiler with new, context-specific behaviors.
- Evolutionary - Evolutionary & genetic algorithms for Julia.
- REPLMaker - Tool for building (domain specific) languages in Julia.
- LLVM.jl - Julia wrapper for the LLVM C API.
- oneAPI.jl - Julia support for the oneAPI programming toolkit.
- RuntimeGeneratedFunctions.jl - Functions generated at runtime without world-age issues or overhead.
- Catwalk.jl - Adaptive optimizer for speeding up dynamic dispatch in Julia.
- Reexport - Julia macro for re-exporting one module from another.
- OpticSim.jl - Optical Simulation software.
- NOMAD.jl - Julia interface to the NOMAD blackbox optimization software.
- BayesNets - Bayesian Networks for Julia.
- IntervalRootFinding.jl - Find all roots of a function in a guaranteed way with Julia.
- DataFrames.jl - In-memory tabular data in Julia. (Introduction to DataFrames.jl)
- DrWatson - Scientific project assistant software.
- Strategems - Quantitative systematic trading strategy development and backtesting in Julia.
- Polyester - Provides low overhead threading.
- ChannelBuffers - Parallel tasks using pipe streams.
- BenchmarkCI.jl - Provides an easy way to run benchmark suite via GitHub Actions.
- BangBang - Implements functions whose name ends with !!. Those functions provide a uniform interface for mutable and immutable data structures.
- Transducers.jl - Efficient transducers for Julia.
- ProtoStructs - Easy prototyping of structs.
- FilePaths.jl - Type based API for working with filesystem paths.
- PowerSystems.jl - Provides a rigorous data model using Julia structures to enable power systems analysis and modeling.
- Dagger.jl - Framework for out-of-core and parallel execution.
- SplitApplyCombine.jl - Split-apply-combine strategies for Julia.
- PythonCall.jl - Python and Julia in harmony.
- Javis - Julia Animations and Visualizations. (First YouTube video created with Javis)
- Juniper - JuMP-based Nonlinear Integer Program Solver.
- ConstraintSolver.jl - Constraint solver completely written in Julia.
- IterTools.jl - Common functional iterator patterns.
- MethodAnalysis - Utilities to analyze Julia's method tables.
- Strided.jl - Julia package for strided array views and efficient manipulations thereof.
- LispSyntax.jl - Clojure-like lisp syntax for julia.
- Fastnet.jl - Julia package that allows very fast (linear-time) simulation of discrete-state dynamical processes on networks, such as commonly studied models of epidemics.
- DataSets - Helps make data wrangling code more reusable.
- ResourceContexts - Safe resource handling for Julia, without the do blocks.
- MacroTools - Tools for working with Julia code and expressions.
- FromFile - Exports a macro @from, which can be used to import objects from files.
- Catalyst.jl - Domain-specific language (DSL) for high-performance simulation and modeling of chemical reaction networks.
- IRTools - Mike's Little Intermediate Representation.
- GraphRecipes - Graph-related recipes to be used with Plots.jl.
- IntervalArithmetic.jl - Rigorous floating-point calculations using interval arithmetic in Julia.
- StructArrays - Efficient implementation of struct arrays in Julia.
- Seaborn - Julia wrapper around the Seaborn data visualization library.
- DynamicHMC - Implementation of robust dynamic Hamiltonian Monte Carlo methods (NUTS) in Julia.
- Clang - Julia interface to libclang.
- InverseFunctions.jl - Defines an interface to invert functions.
- Rematch - Pattern matching.
- Salsa.jl - Framework for on-demand, incremental computation via memoization, inspired by Rust lang's salsa-rs/salsa.
- Blobs - Binary blobs with on-the-fly pointer patching.
- Thrift.jl - Thrift for Julia.
- Graphs - Optimized graphs package for Julia.
- ZipFile - Read/Write ZIP archives in Julia.
- Manifolds.jl - Unified interface to define and use manifolds.
- AtomsBase - Abstract interface for representation of atomic geometries in Julia.
- Combinatorics - Combinatorics library. Focusing on enumerative combinatorics and permutations.
- NamedDims - Zero-cost abstraction to add names to the dimensions of an array.
- PairPlots.jl - Produces corner plots, otherwise known as pair plots or scatter plot matrices: grids of 1D and 2D histograms that allow you to visualize high dimensional data.
- ReadableRegex - Syntax that is much easier to write and understand than the rather cryptic standard Regex.
- Permutations - Permutations class for Julia.
- Tokenize - Tokenization for Julia source code.
- UnsafeArrays - Stack-allocated pointer-based array views.
- Traceur - Codified version of the Julia performance tips. You run your code, it tells you about any obvious performance traps.
- ImageClipboard - Copy & Paste images with Julia.
- Dictionaries - Alternative interface for dictionaries in Julia, for improved productivity and performance.
- PrettyPrinting.jl - Julia library for optimal formatting of composite data structures.
- Cpp.jl - Utilities for calling C++ from Julia.
- DataFrameMacros.jl - Macros for DataFrame manipulation with a syntax geared towards clarity, brevity and convenience.
- Chain - Piping a value through a series of transformation expressions using a more convenient syntax than Julia's native piping functionality.
- RegionTrees.jl - Quadtrees, Octrees, and their N-Dimensional Cousins.
- HDF5 - Save and load data in the HDF5 file format from Julia.
- AMDGPU.jl - AMD GPU (ROCm) programming in Julia.
- Unityper - "compactify" structures in static single inheritance.
- ClimateMachine.jl - Earth System Model that automatically learns from data.
- ReachabilityAnalysis.jl - Methods to compute sets of states reachable by dynamical systems.
- Jin - Julia version of the Python Gin configuration library.
- ArtifactUtils - Tool for package developers for working with artifacts.
- JSExpr - Translate Julia to JavaScript.
- ProfileSVG - Write flame graphs to SVG format and explore them interactively in Jupyter, Pluto, etc.
- GraphViz.jl - Julia Binding to the GraphViz library.
- Interact - Interactive widgets to play with your Julia code.
- Coverage.jl - Take Julia code coverage and memory allocation results, do useful things with them.
- ResumableFunctions - C# style generators a.k.a. semi-coroutines for Julia.
- Generators - Very lightweight, task-based generators.
- Requires - Lazy code loading for Julia.
- CxxInterface.jl - Create Julia interfaces to C++ libraries.
- HomotopyContinuation.jl - Julia package for solving systems of polynomials via homotopy continuation.
- GeoStats - Extensible framework for high-performance geostatistics in Julia.
- MarkdownLiteral.jl - Lets you write Markdown inside Pluto notebooks.
- InitialValues.jl - Canonical default initial values and identity elements for Julia.
- Mux.jl - Middleware for Julia.
- ProgressMeter.jl - Progress meter for long-running computations.
- Modia.jl - Modeling and simulation of multidomain engineering systems.
- WebSockets.jl - WebSockets library for Julia.
- Eyeball.jl - Object and type viewer for Julia.
- GeoMakie - Geographical plotting utilities for Makie.jl.
- PlutoStaticHTML.jl - Convert Pluto notebooks to pure HTML.
- Setfield - Update deeply nested immutable structs.
- ParallelOperations.jl - Basic parallel algorithms for Julia.
- LLLplus.jl - Lattice reduction and other lattice tools in Julia.
- GaussianRandomFields - Package for Gaussian random field generation in Julia.
- MPI - MPI wrappers for Julia.
- MicroMamba.jl - Julia interface to the MicroMamba package manager.
- CondaPkg.jl - Add Conda dependencies to your Julia project.
- SCS - Julia wrapper for the SCS splitting cone solver.
- LogicCircuits.jl - Logic Circuits from the Juice library.
- Measurements.jl - Error propagation calculator and library for physical measurements.
- PartitionedArrays.jl - Vectors and sparse matrices partitioned into pieces for parallel distributed-memory computations.
- ZMQ.jl - Julia interface to ZeroMQ.
- AWSS3 - AWS S3 Simple Storage Service interface for Julia.
- Arrow - Official Julia implementation of Apache Arrow.
- JuliaSyntax - Julia frontend, written in Julia.
- GLPK.jl - Wrapper for the GNU Linear Programming Kit library.
- FlameGraphs - Analysis of profiling data using trees.
- SymbolicIntegration - Julia implementations of symbolic integration algorithms.
- GPUCompiler.jl - Reusable compiler infrastructure for Julia GPU backends.
- GeoJSON.jl - Utilities for working with GeoJSON data in Julia.
- ChaosTools.jl - Tools for the exploration of chaos and nonlinear dynamics.
- ArgCheck - Package for checking function arguments.
- FunctionalCollections - Functional and persistent data structures for Julia.
- FreqTables - Frequency tables in Julia.
- Denumpyfy.jl - Translating numpy notebooks to Julia.
- SimilaritySearch.jl - Near Neighbor Search Library.
- CBinding.jl - Automatic C interfacing for Julia.
- LanguageServer - Implements the Microsoft Language Server Protocol for the Julia programming language.
- LocalCoverage.jl - Trivial functions for working with coverage for packages locally.
- LogExpFunctions.jl - Julia package for various special functions based on
log
andexp
. - Missings.jl - Missing value support for Julia.
- PlotlyJS - Julia library for plotting with plotly.js.
- SparseArrays - Functionality for working with sparse arrays in Julia.
- RedefStructs.jl - Redefinable structures.
- TopOpt - Beautifully Julian topology optimization package.
- Mixtape.jl - Static method overlay and optimization tool with configurable code generation and execution.
- TimeseriesPrediction - Prediction of timeseries using methods of nonlinear dynamics and timeseries analysis.
- ControlSystemIdentification - System Identification toolbox for LTI systems, compatible with ControlSystems.jl.
- ArrayLayouts - Julia package for describing array layouts and more general fast linear algebra.
- Static - Static types useful for dispatch and generated functions.
- ProtoBuf.jl - Julia protobuf implementation.
- MPIClusterManagers.jl - Julia parallel constructs over MPI.
- Stonks.jl - Julia library for standardizing financial data retrieval and storage from multiple APIs.
- PyPlot - Plotting for Julia based on matplotlib.pyplot.
- FillArrays.jl - Julia package for lazily representing matrices filled with a single entry.
- Configurations - Options & Configurations made easy.
- AMQPClient - Julia AMQP (Advanced Message Queuing Protocol) / RabbitMQ Client.
- DynamicAxisWarping.jl - Dynamic Time Warping (DTW), matrix profile and related algorithms in Julia.
- PyCallChainRules - Differentiate python calls from Julia.
- Replay - Replay your REPL instructions.
- sir-julia - Various implementations of the classical SIR model in Julia.
- EnumX.jl - What I wish Base.@enum was.
- ValSplit.jl - Compile away dynamic dispatch on Val-typed arguments via value-splitting.
- EvoTrees - Boosted trees in Julia.
- ImageProjectiveGeometry - Projective geometry for computer vision in Julia.
- ArrayAllocators - Allocate arrays with malloc, calloc, or on NUMA nodes.
- InMemoryDatasets - Multithreaded package for working with tabular data in Julia.
- Tilde - Successor to Soss.jl.
- DocumenterCitations.jl - Uses Bibliography.jl to add support for BibTeX citations and references in documentation pages generated by Documenter.jl.
- Expronicon - Collective tools for metaprogramming on Julia Expr.
- FoldsThreads - Extra threaded executors for JuliaFolds/*.jl.
- LIBSVM.jl - LIBSVM bindings for Julia.
- SMTPClient - Send emails from Julia.
- MarketTechnicals.jl - Technical analysis of financial time series in Julia.
- AeroMDAO - Toolbox meant for aircraft design analyses.
- Julia Buildkite - Buildkite configuration files for Base Julia CI.
- PortAudio.jl - Wrapper for the Julia programming language, compatible with the JuliaAudio family of packages.
- ShiftedArrays - Lazy shifted arrays for data analysis in Julia.
- MomentClosure.jl - Tools to generate and study moment equations for any chemical reaction network using various moment closure approximations.
- AxisKeys.jl - Defines a thin wrapper which, alongside any array, stores a vector of "keys" for each dimension.
- StaticLint - Static Code Analysis for Julia.
- NestedTuples - Tools for making it easier to work with nested tuples and nested named tuples.
- LinearMaps - Julia package for defining and working with linear maps.
- Glob - Posix-compliant file name pattern matching.
- ComputedFieldTypes - Build types in Julia where some fields have computed types.
- ImageInTerminal - Julia package for displaying images in the terminal using ANSI colors and Unicode characters.
- ThreadedArrays - "Easy" parallelism injection.
- ParallelMagics - Safe parallelism using compiler analysis.
- CounterfactualExplanations - Package for Counterfactual Explanations and Algorithmic Recourse in Julia.
- ReferenceFrameRotations - Toolbox to represent 3D rotations of coordinate frames for Julia language.
- StructEquality - Equality for struct types as you would expect it.
- PkgCleanup - Garbage collects packages and artifacts that are no longer reachable.
- BatchedRoutines - Batched routines (BLAS, LAPACK, etc.) for multi-dimensional arrays.
- JunctionTrees - Metaprogramming-based implementation of the junction tree algorithm.
- LineSearches - Line search methods for optimization and root-finding.
- SimpleChains - Only supports simple chains, but it intends to be fast for small problems on the CPU.
- REPLTreeViews.jl - Provides an experimental macro to interactively show complex data structures in the REPL.
- Tricks - Cunning tricks though the Julia compiler internals.
- Parameters - Types with default field values, keyword constructors and (un-)pack macros.
- Karnak.jl - Small extension for the Luxor.jl package to help with constructing graph-style drawings.
- Maybe.jl - Optional value handling for Julia.
- PythonIO.jl - Read and write some common Python data formats.
- StatProfilerHTML - Show Julia profiling data in an explorable HTML page.
- ProximalAlgorithms.jl - Proximal algorithms for non-smooth optimization in Julia.
- WordCloud.jl - Word cloud generator in Julia.
- RemoteREPL - Connect a REPL to a remote Julia process.
- JuliennedArrays - Type stable array slicing.
- ProfileView.jl - Visualization of Julia profiling data.
- Observables - Observables are like Refs but you can listen to changes.
- TimeZones.jl - IANA time zone database access for Julia.
- SumTypes - Implementation of sum types.
- JuliaPkg - Manage your Julia dependencies from Python.
- TableTransforms - Transforms and pipelines with tabular data.
- EllipsisNotation.jl - Implements the notation
..
for indexing arrays. - KernelAbstractions.jl - Heterogeneous programming in Julia.
- LazyModules - Provides package developers an alternative option to delay package loading until used.
- OffsetArrays.jl - Fortran-like arrays with arbitrary, zero or negative starting indices.
- Adapt - Allows you to "convert" wrapper types like Adjoint to be GPU compatible.
- ProfileCanvas - Exposes the HTML canvas based profile viewer UI used by the Julia extension for VS Code in the REPL and environments that can display HTML.
- LoggingExtras - Composable Loggers for the Julia Logging StdLib.
- TerminalLoggers - Logging sinks and utilites for interactive terminals.
- FastClosures - Faster closure variable capture.
- Accessors - Update immutable data.
- ParserCombinator - Parser combinator library for Julia.
- CSV - Fast, flexible delimited file reader/writer for Julia.
- LatticeQCD.jl - Native Julia code for lattice QCD with dynamical fermions in 4 dimension.
- Groebner.jl - Groebner bases in pure Julia.
- BinaryBuilder - Binary Dependency Builder for Julia.
- Glyphy - Searches through the names of glyphs in the Unicode system and returns a list of the glyph names that match the search string.
- FastBroadcast - Exports @.. that compiles broadcast expressions into loops that are easier for the compiler to optimize.
- Gnuplot.jl - Julia interface to gnuplot.
- Strs - String support package for Julia.
- TOML.jl - Fast TOML parser for TOML 1.0 written in Julia.
- DecisionTree.jl - Julia implementation of Decision Tree (CART) and Random Forest algorithms.
- QuantizedArrays - Array quantization and compression.
- GraphPlot - Graph visualization for Julia.
- GR.jl - Plotting for Julia based on GR, a framework for visualization applications.
- MemoizedMethods.jl - Methodwise memoization for Julia.
- PikaParser.jl - Pure Julia implementation of pika parser.
- DynamicGrids - Grid-based simulations in Julia.
- DimensionalData - Named dimensions and indexing for julia arrays and other data.
- Rasters - Defines common types and methods for reading, writing and manipulating rasterized spatial data.
- Flatten - Flatten nested Julia objects to tuples, and reconstruct them later.
- ModelParameters - Easy, standardised parameter get/set for heterogeneous or nested immutable models.
- LibGEOS.jl - Julia package for manipulation and analysis of planar geometric objects.
- Pollen.jl - Format-independent document generation tool built for interactive work.
- Interfaces - Macros to define and impolement interfaces, to ensure they are checked and correct.
- StructuralEquationModels.jl - Fast and flexible Structural Equation Modelling Framework.
- ComponentArrays.jl - Arrays with arbitrarily nested named components.
- ConcreteStructs.jl - Make non-concrete structs concrete without the boilerplate of adding type parameters.
- SimulationLogs.jl - Signal logging and scoping for DifferentialEquations.jl simulations.
- ConstructiveGeometry - Algorithms and syntax for building CSG objects within Julia.
- Altro.jl - Implementation of the Augmented Lagrangian TRajectory Optimizer (ALTRO) solver.
- StructuralIdentifiability.jl - Julia package for assessing structural parameter identifiability of parametric ODE models, both local and global.
- SignalAnalysis.jl - Signal analysis toolbox for Julia.
- Deductive.jl - Package for expressing and proving zeroth order and first order logical statements and theorems symbolically in Julia.
- CanonicalTraits - Full-featured traits in Julia.
- OrderedCollections.jl - Julia implementation of associative containers that preserve insertion order.
- Clarabel.jl - Interior Point Conic Optimization for Julia.
- MathOptSetDistances - Distances to sets for MathOptInterface.
- RecipesPipeline - Utilities for processing recipes.
- Banyan Julia - Suite of libraries for processing big data with familiar Julia APIs.
- ExproniconLite - No fancy pattern matching, no dependencies, Light-weight Expronicon for low latency.
- DocumenterTools - Extra tools for setting up Documenter.
- Virtual - Virtual call in Julia, and calls are de-virtualized if possible.
- Jl2Py - Transpile from Julia to Python.
- ObjectOriented - Mechanical OOP programming library for Julia.
- LikelihoodProfiler - Julia package for practical identifiability analysis and confidence intervals evaluation.
- Figgy - Threadsafe, sensible configuration management package for Julia.
- TranscodingStreams - Simple, consistent interfaces for any codec.
- JLD2 - HDF5-compatible file format in pure Julia.
- DemoCards - Dynamically generate a demo page and integrate with Documenter.jl.
- ProtocolBuffers.jl - Julia package that provides a compiler and a codec for Protocol Buffers.
- ProjectionPursuit - Dimension reduction using projection pursuit in Julia.
- OpenTelemetry.jl - Unofficial implementation of OpenTelemetry in Julia.
- CloudBase - Simple, yet comprehensive foundation for interacting with common cloud providers in Julia (GCP, Azure, AWS).
- Legolas.jl - Tables.jl-friendly mechanisms for constructing, reading, writing, and validating Arrow tables against extensible, versioned, user-specified schemas.
- Zarr - Julia package providing an implementation of chunked, compressed, N-dimensional arrays.
- Folds - Sequential, threaded, and distributed fold interface for Julia.
- ReadStat - Read files from Stata, SAS, and SPSS.
- CompTime - Library for compile-time computing in Julia.
- Scratch.jl - Scratch spaces for all your persistent mutable data needs.
- ShapeCheck.jl - Nice syntax for runtime shape checking of function outputs given their inputs.
- Jot.jl - Streamlines the creation and management of AWS Lambda functions written in Julia.
- RegistryCI.jl - Continuous integration (CI) tools for Julia package registries, including registry consistency testing, automatic merging (automerge) of pull requests, and automatic TagBot triggers.
- FilePathsBase.jl - Type based approach to working with filesystem paths in julia.
- CachePath - Allow caching precompiled Julia code in a specified directory.
- PlotIter - Make many plots from an iterable.
- MultiDocumenter - Aggregates Documenter.jl documentation from multiple sources into one page with a global search bar.
- AutoSysimages - Automate user-specific system images for Julia.
- EasyFit - Easy interface for obtaining fits of 2D data.
- Carousel Arrays - Arrays that can be indexed repeatedly.
- CoherentNoise - Comprehensive suite of coherent noise algorithms and composable tools for manipulating them.
- WhereTraits - Dispatch on whatever you want using where syntax.
- Wavelets - Julia package for fast discrete wavelet transforms and utilities.
- ColorTypes - Basic color definitions and traits.
- Overseer - Entity Component System with Julia.
- Glimpse - Attempt at creating a midlevel rendering library using the refactored GLAbstraction.
- PartialFunctions - Small package to simplify partial function application.
- Rotations.jl - 3D rotations made easy in Julia.
- IntervalSets.jl - Interval Sets for Julia.
- Quaternions.jl - Julia module with quaternion and dual-quaternion functionality.
- MarkdownTables.jl - Lightweight package to print a table that implements the Tables.jl interface in Markdown.
- MultilayerGraphs.jl - Julia package for the construction, manipulation and analysis of multilayer graphs.
- SentinelArrays.jl - Array types that can use sentinel values of the element type for special values.
- Geodesy - Work with points defined in various coordinate systems.
- Suppressor - Julia macros for suppressing and/or capturing output (STDOUT), warnings (STDERR) or both streams at the same time.
- Diderot.jl - Decision Diagrams for Discrete Optimization in Julia.
- SCIP.jl - Julia interface to SCIP solver.
- PlutoRESTClient - Interact with your Pluto notebooks from other Julia programs.
- SetupIterator.jl
- BayesHistogram.jl - Optimal histogram binning based on piecewise constant model.
- ShortStrings - Fast implementation of short strings of fixed size. Great for sorting and group-by operations.
- PkgCacheInspector - Inspect the contents of Julia package cache files.
- Ümlaut - Code tracer for Julia. Trace the function execution, recording all primitive operations onto a linearized tape.
- Spark.jl - Julia interface to Apache Spark.
- AVRCompiler.jl - Used for compiling Julia source code to AVR assembly.
- Bessels.jl - Numerical routines for computing Bessel, Airy, and Hankel functions for real arguments.
- ImPlot.jl - Plotting extension library for CImGui.jl.
- Bumper.jl - Make working with bump allocators easy and safe-ish.
- Classes.jl - Simple, Julian approach to inheritance of structure and methods.
- PProf.jl - Export Julia profiles to the pprof format.
- FourierFlows.jl - Tools for building fast, hackable, pseudospectral partial differential equation solvers on periodic domains.
- Preferences - Convenient, integrated way for packages to store configuration switches to persistent TOML files.
- StructHelpers - Automate common struct definition boilerplate.
- AdvancedHMC.jl - Robust, modular and efficient implementation of advanced Hamiltonian Monte Carlo algorithms.
- PlotlyLight - Plotly.js via Julia made easy.
- Tally
- Sylvia - Simple symbolic library.
- Leaflet - LeafletJS maps for Julia.
- ReadStatTables.jl - Read data files from Stata, SAS and SPSS into Julia tables.
- Octavian - Multi-threaded BLAS-like library that provides pure Julia matrix multiplication.
- ChangesOfVariables.jl - Interface for transformation functions in Julia.
- DiffResults - API for querying differentiation results at multiple orders simultaneously.
- PowerAnalyses.jl - Statistical power analyses in Julia.
- DevOnly.jl - Using runtime-free macro packages as dev-only dependencies.
- FMI.jl - Load or create, parameterize and simulate FMUs seamlessly inside Julia.
- FMIFlux.jl
- Serd.jl - Julia bindings to Serd RDF library.
- Promises.jl - JavaScript-inspired async.
- MetaGraphsNext - Experimental, type-stable replacement for MetaGraphs.
- CellListMap.jl - Flexible implementation of cell lists to map the calculations of particle-pair dependent functions, such as forces, energies, neighbour lists, etc.
- ClusterManagers - Support for different job queue systems commonly used on compute clusters.
- StringViews - String-like views of arbitrary Julia byte arrays.
- Highlights - Source code highlighter for Julia.
- PopGen - Population Genetics in Julia.
- LogDensityProblems.jl - Common framework for implementing and using log densities for inference.
- OpenAPI - OpenAPI helper and code generator for Julia.
- GraphMakie - Plotting graphs with Makie.
- Crystals - Atomic crystal structures for Julia.
- IsDef - Maintainable type inference.
- MCIntegration - Robust and fast Monte Carlo algorithm for high dimension integration.
- EasyModelAnalysis.jl - High level functions for analyzing the output of simulations.
- CommutativeRings.jl - CAS, Commutative Rings, Fraction Fields, Quotient Rings, Polynomial Rings, Galois Fields.
- MapTiles - Work with tiled web maps in Julia.
- MakiePublication.jl - Julia package for producing publication quality figures based on Makie.jl.
- TupleTools.jl - Type stable methods for small tuples.
- DelayDiffEq.jl - Delay differential equation solvers for the SciML scientific machine learning ecosystem.
- Kroki.jl - Enables a wide array of textual diagramming tools working within Julia.
- Tidier.jl - Implementation of the R tidyverse mini-language in Julia.
- Nerf.jl - Real-time Neural 3D Scene Reconstruction.
- SHA - Performant, 100% native-julia SHA1, SHA2, and SHA3 implementation.
- ConstructionBase - Primitives for construction of objects.
- CassetteOverlay - Experimental simple method overlay mechanism for Julia.
- VideoIO - Reading and writing of video files in Julia.
- SparseMatricesCSR - Sparse matrices in CSR format for Julia computations.
- OpenAI - OpenAI API wrapper for Julia.
- TruncatedStacktraces.jl - Truncated and Simpler Stacktraces.
- IntervalTrees - Data structure for efficient manipulation of sets of intervals.
- ChunkSplitters - Simple chunk splitters for parallel loop executions.
- LaTeXTabulars.jl - Write tabular data from Julia in LaTeX format.
- ReplGPT.jl - Talk to ChatGPT from the Julia REPL.
- ScheduleMeetings - Schedule weekly meetings for lists of presenters.
- Whisper.jl - Julia package for automatic speech recognition, based on OpenAI's Whisper model.
- IRViz - Tools for visualizing Julia IR.
- SparseDiffTools.jl - Fast jacobian computation through sparsity exploitation and matrix coloring.
- ThreadPinning.jl - Readily pin Julia threads to CPU processors.
- Pajarito - Solver for mixed-integer convex optimization.
- Unitful.jl - Physical quantities with arbitrary units.
- DynamicIterators.jl - Iterators with message passing and feedback loops.
- GraphsOptim - Graph-related optimization algorithms that rely on Linear Programming.
- Muon - Multimodal framework.
- PropertyFunctions.jl - Julia package for easy access to and efficient broadcasting over properties.
- VimBindings.jl - Vim bindings for the Julia REPL.
- Rocket.jl - Functional reactive programming extensions library for Julia.
- DataCurator - Multithreaded package to validate, curate, and transform large heterogeneous datasets using reproducible recipes.
- BFloat16s - Exports the BFloat16 data type.
- JDF.jl - Julia DataFrames serialization format. (HN)
- CellArrays - Arrays containing logical cells of small arrays or structs.
- GPUInspector.jl - Inspecting high-performance (multi-)GPU systems with Julia.
- JSONWebTokens.jl - Secure your Julia APIs with JWT.
- Mousetrap - GUI Engine made for Julia.
- WaterLily.jl - Fast and simple fluid simulator in Julia.
Links
- Julia Observer
- Curated decibans of Julia programming language
- Some State of the Art Packages in Julia v1.0 (2018)
- PackagePage.jl - Create a webpage for your package in minutes.
- JuliaReach - Toolbox for set-based reachability analysis and safety verification of dynamical systems. (GitHub)
- JuliaGraphs - Graph packages for the Julia language. (GitHub)
- jlpkg - Command line interface (CLI) for Pkg, Julia's package manager.
- How to Create Software Packages with Julia Language (2021)
- The Julia Package Manager (2020)
- PkgTemplates - Creates new Julia packages in an easy, repeatable, and customizable way.
- Welcome to DataFrames.jl Workshop
- Aqua.jl - Auto QUality Assurance for Julia packages. Provides functions to run a few automatable checks for Julia packages.
- The Algorithms - Julia - Algorithms implemented in the Julia programming language.
- JuliaSymbolics - Symbolic programming in Julia.
- LocalPackageServer - Julia storage and package server for local packages.
- Pkg - Package manager for the Julia programming language. (Docs)
- Registrator - GitHub app that automates creation of registration pull requests for your julia packages to the General registry.
- General - Official registry of general Julia packages.
- Julia frameworks to create desktop GUIs and web apps (2022) (HN)
- LocalRegistry - Create and maintain local registries for Julia packages.
- jluna - Julia ⭤ C++ Wrapper with Focus on Modernity, Safety and Ease of Use. (Reddit)
- Julia Compiler Plugins
- Julia on HPC systems - Information on how to set up Julia on HPC systems.
- Julia TagBot - Creates tags, releases, and changelogs for your Julia packages when they're registered.
- Julia Packages Twitter - Feed of newly created and updated Julia packages.
- Julia Package Setup Tutorial (2021)
- Guide to Artifacts in Julia (2022)
- JNumPy - Writing high-performance C extensions for Python in minutes. (HN)
- PkgDependency - Show dependency tree of Julia project.
- PlutoSliderServer - Web server to run just the @bind parts of a Pluto.jl notebook.
- InteractiveCodeSearch.jl - Interactively search Julia code from terminal.
- PkgGraphs.jl - Visualize the dependency graph of a Julia package.
- Julia will cache precompiled binaries of packages v1.9
- Tables.jl - Interface for tables in Julia.
- BugReporting.jl - Streamlines bug reporting for Julia.
- Ion - CLI toolbox for Julia developer.
- InterfaceSpecs - Playground for formal specifications of interfaces in Julia.