+++ title = "Packages" +++
The central package of the ecosystem is Graphs.jl. It contains a standard graph interface and some basic types for unweighted graphs, as well as a set of combinatorial algorithms like shortest paths.
Many of the other packages we list rely only on this interface, so as to be compatible with arbitrary graph types.
- SimpleWeightedGraphs.jl: Simple graphs with weighted edges.
- MetaGraphs.jl: Graphs with metadata on the vertices and edges.
- MetaGraphsNext.jl: A more efficient but less flexible alternative to MetaGraphs.jl.
- StaticGraphs.jl: Memory-efficient immutable graphs.
- MultilayerGraphs.jl: Graphs with multiple layers.
- GraphsFlows.jl: Flow optimization algorithms.
- GraphsMatching.jl: Matching optimization algorithms.
- CommunityDetection.jl: Community detection algorithms.
- GraphsOptim.jl: Graph optimization algorithms that rely on mathematical programming.
- GraphIO.jl: Read graphs from files and write them to files in various formats.
- SNAPDatasets.jl: Extract graphs from the SNAP Datasets collection.
- GraphPlot.jl: Graph visualization utilities.
- NetworkLayout.jl: Layout algorithms to position nodes automatically before plotting graphs and trees.
- GraphDataFrameBridge.jl: Tools for interoperability between DataFrames.jl and Graphs.jl / MetaGraphs.jl.
- Graph500.jl: Graph500 benchmarks.