It's a metadata format for decentralized projects.

It lets you specify titles, photos, binary files, and other stuff in a way that a client can understand. It's typed and documents can refer to other documents. It looks like this:

{
  "object": "omg",
  "version": "0.1.0",
  "schemas": ["ipfs://QmbNa2CdaSbxs8KuJaY2ZaPRgVPjRdLdwgY2Z5Db4yoQhz"],
  "elements": [
    {
      "object": "string",
      "key": "title",
      "value": "My Cool Title"
    },
    {
      "object": "file",
      "key": "photos",
      "uri": "ipfs://some-cid"
    },
    {
      "object": "file",
      "key": "photos",
      "uri": "ipfs://another-cid"
    },
    {
      "object": "node",
      "key": "reference",
      "uri": "ipfs://QmbNa2CdaSbxs8KuJaY2ZaPRgVPjRdLdwgY2Z5Db4yoQhz"
    }
  ]
}

You can query documents from GraphQL & IPFS

OpenMetaGraph documents can auto-generate a GraphQL API. Create your own OpenMetaGraph gateway, or use a public one.

{
  get(key: "ipfs://cid") {
      title
      photos {
        uri
        contentType
      }
  }
}