Michael Antonov, Gábor Csárdi, Szabolcs Horvát, Kirill Müller, Tamás Nepusz, Daniel Noom, Maëlle Salmon, Vincent Traag, Brooke Foucault Welles, Fabio Zanini
igraph pairs a fast core written in C with beginner-friendly interfaces in Python, R, and Mathematica, enabling public access to a robust and stable network analysis with over a million monthly downloads after twenty years of development, handles billions of edges, supports interactive plotting, integrates with notebooks, facilitates conversions to and from other network libraries, includes a rich library of graph layout and community detection algorithms, and has a detailed documentation including non-English translations. igraph delivers both speed and flexibility, increasing robustness with modern testing features such as continuous integration, address sanitizers, stricter typing, and memory-managed vectors, and has fixed hundreds of bug reports. igraph broadens use and community participation by women, non-binary people, and other demographic groups typically underrepresented in open source software.
Networks or graphs are widely used across the sciences to represent relationships of many kinds. The igraph (https://igraph.org) software library supports graph construction, analysis, and visualisation, combining fast and robust performance with a low entry barrier. igraph pairs a fast core written in C with beginner-friendly interfaces in Python, R, and Mathematica. After twenty years of development, igraph 1.0 has been released, enabling public access to a robust and stable network analysis with over a million monthly downloads. Thanks to its cross-language design, igraph delivers both speed and flexibility: it can handle billions of edges, supports interactive plotting, integrates with notebooks, facilitates conversions to and from other network libraries, includes a rich library of graph layout and community detection algorithms, and has a detailed documentation including non-English translations. Modern testing features such as continuous integration, address sanitizers, stricter typing, and memory-managed vectors have also increased robustness. Hundreds of bug reports have been fixed and a community forum has been opened to connect users and developers. Specific effort has been made to broaden use and community participation by women, non-binary people, and other demographic groups typically underrepresented in open source software.