networkx supports a graph serialization format it calls node-link data that can be read/written to JSON. See
While this format doesn't appear to be a standard, it is simple and interoperable due to its JSON compatibility. It supports node & edge attributes.