Need help with LightGraphs.jl?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

639 Stars 184 Forks Other 1.6K Commits 28 Opened issues


An optimized graphs package for the Julia programming language

Services available


Need anything else?

Contributors list


Build Status DOI

LightGraphs offers both (a) a set of simple, concrete graph implementations --

(for undirected graphs) and
(for directed graphs), and (b) an API for the development of more sophisticated graph implementations under the

The project goal is to mirror the functionality of robust network and graph analysis libraries such as NetworkX while being simpler to use and more efficient than existing Julian graph libraries such as Graphs.jl. It is an explicit design decision that any data not required for graph manipulation (attributes and other information, for example) is expected to be stored outside of the graph structure itself. Such data lends itself to storage in more traditional and better-optimized mechanisms.

Additional functionality may be found in a number of companion packages, including: * LightGraphsExtras.jl: extra functions for graph analysis. * MetaGraphs.jl: graphs with associated meta-data. * SimpleWeightedGraphs.jl: weighted graphs. * GraphIO.jl: tools for importing and exporting graph objects using common file types like edgelists, GraphML, Pajek NET, and more.


Full documentation is available at GitHub Pages. Documentation for methods is also available via the Julia REPL help system. Additional tutorials can be found at JuliaGraphsTutorials.


Installation is straightforward: enter Pkg mode by hitting

, and then
(v1.0) pkg> add LightGraphs

Supported Versions

  • LightGraphs master is generally designed to work with the latest stable version of Julia (except during Julia version increments as we transition to the new version).
  • Julia 0.3: LightGraphs v0.3.7 is the last version guaranteed to work with Julia 0.3.
  • Julia 0.4: LightGraphs versions in the 0.6 series are designed to work with Julia 0.4.
  • Julia 0.5: LightGraphs versions in the 0.7 series are designed to work with Julia 0.5.
  • Julia 0.6: LightGraphs versions in the 0.8 through 0.12 series are designed to work with Julia 0.6.
  • Julia 0.7 / 1.0: LightGraphs versions in the 1.x series are designed to work with Julia 0.7 and Julia 1.0.
  • Later versions: Some functionality might not work with prerelease / unstable / nightly versions of Julia. If you run into a problem, please file an issue.

Contributing and Reporting Bugs

We welcome contributions and bug reports! Please see for guidance on development and bug reporting.


We encourage you to cite our work if you have used our libraries, tools or datasets. Starring the repository on GitHub is also appreciated. See the Zenodo badge above or refer to


We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.