Constellations is a high-performance and real-time indexer developed by Fabien Penso originally for Stargaze and now for multiple Cosmos chains. Constellations is currently used by Stargaze for its main website to display data in the fastest way possible.
Constellations indexes blocks, transactions, messages and events and is able to index any Cosmos chain. It also indexes off-chain data like IPFS NFTs to store width, height, content_type and content_length as well as NFT metadata like traits and automatically calculate rarity. It also stores Stargaze specific informations like Stargaze names.
A public facing website available at www.constellations.zone.
A set of API to fetch data Constellations has indexed. This API is available over GraphQL and self-generated GraphQL documentation is enabled.
You should already know about GraphQL to use Constellations. You can read more about GraphQL here.
Constellations is built entirely in Rust, backed with Posgresql and hosted on bare metal servers for optimum performance. It fetches blocks live from the blockchain over websockets, and parse them instantly.
It ran fine on a single server, but we wanted to have redundancy to avoid downtimes. These days it manages way over 10 million requests per day.
While I try to minimize bugs and issues, Constellations sometimes (but rarily) stops indexing, or has an indexing issue which means it does not reflect the blockchain data. It is highly recommended to use Stargaze RPC servers to verify information if you are moving tokens. For example, if you want to send STARS to a given Stargaze name, you should use the RPC server to get the STARS address associated with that given name, and not Constellations which could lead to sending STARS to an old associated address if the indexer stopped.
All timestamps you get are UTC and don't include timezone.
Add a way to contact you in the
User-Agent header in case I need to get in
touch with you if you are making too many requests.
There is no throttling in place for now but will be soon. Please don't hammer the server with too many calls.
Create an issue with as many details as possible, contract type, information you want and why you want to fetch it.
The Constellations documentation are released under the Mozilla Public License v2.0.