# What is Murmurations?
Murmurations is a distributed data sharing network built to help connect regenerative economy projects and organizations and make them visible to the world and each other.
The network is comprised of:
- Nodes and other data hosts that share data in the network
- An index that keeps track of what data is available in the network, and where it is located
- Aggregators that collect data from the network and display it in various ways
- A library of fields and schemas that describe the data in the network
To enable these entities to work together, Murmurations provides:
- A protocol for defining and exchanging data about and amongst organizations, based on existing standards such as JSON Schema, Schema.org, REST APIs and JSON-LD principles.
- An index (opens new window), library (opens new window), profile generator (opens new window) and a user-friendly data host where organizations can quickly add themselves to the network.
- Open source plug-ins and other code to make it as easy as possible to use, share and contribute data to the network in a decentralized way.
The initial use case for Murmurations was to facilitate decentralized mapping of purpose-driven and solidarity economy organizations and projects.
Further historical background is in the 2019 Murmurations Whitepaper (opens new window).
# How does it work?
The Murmurations Protocol enables individuals and organizations (nodes) to create profiles about themselves in order to easily share information with aggregators, who create schemas to define the data they need to create maps, directories and content aggregators.
A library (opens new window) stores details of the schemas and the fields (data points) they are composed of.
A node pulls a schema from the library to determine the data needed to create a profile. You can try out the latest version of the profile generator (opens new window) to create a node profile based on a selection of schemas.
An index (opens new window) keeps track of nodes and the schemas linked to their profiles. Whenever a node updates its profile it should tell the index. Aggregators regularly query the index for profile changes by nodes using their schemas, enabling them to provide accurate and timely information in their maps, directories and content aggregators.