RedStone Node is a core module in the RedStone ecosystem, which is responsible for fetching data from different sources and broadcasting it to the Arweave blockchain and the RedStone cache layer.
Concept | Description |
---|---|
Provider | An entity that fetches the data from external APIs, transforms it to a standard format, and persists collected information in the Redstone data ecosystem. Each provider has a running instance of redstone-node |
Fetcher (source) | A module responsible for fetching the data from an external API. Examples: coinbase fetcher, ecb fetcher |
Manifest | Public JSON file that defines the provider's obligation regarding the data that they provide. It sets fetching interval, tokens, sources and other public technical details |
Config | Private configuration file created by provider |
Signer | A module responsible for data signing. Examples: EvmPriceSigner, ArweavePriceSigner |
Aggregator | A module responsible for aggregating the data fetched from different sources. Median aggregator is used by default |
Broadcaster | A module responsible for broadcasting the signed data. Currently it sends the signed data to the RedStone cache layer. This data may be fetched then through the RedStone API |
Arweave | Arweave is a new type of blockchain that allows to store data on Blockchain with much lower costs. It is used by RedStone protocol for storing data |
- Running the node
- Prepare config file
- Prepare manifest
- Add new source
- Add new token
- Publish to NPM
- Deploy manifest on Arweave
We encourage anyone to build and test the code and we welcome any issues with suggestions and pull requests.
yarn install
yarn test
yarn build
Please feel free to contact us on Discord if you face any problems.
This software is licensed under the MIT © Redstone