Data indexers for the Sablier protocol for onchain token distribution. The indexers monitor Sablier's smart contract events and transform them into structured, queryable data APIs via GraphQL. The data is used to power the Sablier Interface.
We support two indexing services: The Graph and Envio.
In-depth documentation is available at docs.sablier.com. We provide a separate indexer for each protocol:
- Sablier Airdrops - Airdrop distribution data
- Sablier Flow - Payment streams data
- Sablier Lockup - Vesting streams data
Sync the changes to the deployment/main
branch, and the Envio Hosted Service will automatically build and deploy the
new indexers.
Each subgraph has a version label used to track changes made to the subgraph. The format is:
v{PROTOCOL_VERSION}--v{SUBGRAPH_VERSION}
Here's an example for how to set the version label if the current version label is v2.0--v1.0.0
:
Change | New Version Label |
---|---|
Hot fix | v2.0--v1.0.1 |
New addresses | v2.0--v1.1.0 |
Staging | v2.1--v1.0.0-beta.0 |
New protocol release | v2.1--v1.0.0 |
For a full list of protocol versions, see the Sablier SDK (run the
print-versions
command).
Go to each protocol's directory and run the deploy-all
recipe. For example:
cd graph/lockup
just deploy-all v2.1--v1.0.0
Then, do the same for the other protocols.
Note
The Graph is not officially supported on some chains, e.g. Lightlink. To make deployments to these custom instances of
The Graph, use the deploy-custom
recipe.
We welcome contributions! [Open an issue](https://github.com/sablier-labs/indexers/ issues/new), start a discussion, or submit a PR.
Read our CONTRIBUTING guide to get started. Join our Discord server for questions and feedback. Join our Discord server for questions and feedback.
This repo is licensed under GPL 3-0 or later.