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 next 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 or features | v2.0--v1.1.0 |
| Staging new protocol release | 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.0Then, 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, start a discussion, or submit a PR.
Read our CONTRIBUTING guide to get started. Join our Discord server for questions and feedback.
This repo is licensed under GPL 3-0 or later.
