Internal Data Bridge
The Internal Data Bridge is an internal Gatsby plugin located at internal-plugins/internal-data-bridge. Its purpose is to create nodes representing pages, plugins, and site config so that they can be introspected for arbitrary purposes. As of writing, the only usage of this is by the gatsby-plugin-sitemap which uses it to… yes you guessed it, create a site map of your site.
As a site developer, you can write queries to introspect your site’s information. For example, to get a list of all Gatsby plugins that you’re using:
The internal data bridge creates 3 types of nodes that can be introspected.
This is a node that contains fields from your site’s
gatsby-config.js, as well as program information such as host and port for the local development server.
A very commonly used field on this node is the
siteMetadata field. This field provides access to any arbitrary data that’s added to your site’s
gatsby-config.js under the
In a page or static query:
A Node for each plugin in your
gatsby-config.js that contains the full contents of the plugin’s
Internal Data Bridge implements onCreatePage and creates a node of type
SitePage that represents the created Page. Which allows you to introspect all pages created for your site.