I'm interested in a C++ library for reading and possibly writing graphs and digraphs from and to buffers and streams/files. In other words: A graph de/serialization library.

Required features:

  • Supports at least a few commonly-used formats
  • Gratis
  • Libre
  • Multi-platform (Linux, Windows, Mac)

Desired features (not in order of significance):

  • Supports most/all common formats (say, something like this list).
  • Utilizes modern C++
  • Has few or no dependencies (e.g. not Boost)
  • Supports graph-like structures, e.g. graphs with ports
  • Supports various non-basic features of the different formats (e.g. labels, coloring and grouping in graphviz).
  • Actively maintained.
  • Does not require building the graph in some library-specific format, but can accommodate your own format through iterators or templates.
  • C bindings
  • Can work entirely at compile-time if serializing/de-serializing from a buffer available at compile-time.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.