@iexec/iexec-oracle-factory-wrapper
Version:
A wrapper for creating API based oracles for ethereum on the top of iExec
76 lines (47 loc) • 2.64 kB
Markdown
<p align="center">
<a href="https://iex.ec/" rel="noopener" target="_blank"><img width="150" src="./logo-iexec.png" alt="iExec logo"/></a>
</p>
<h1 align="center">OracleFactory</h1>
**OracleFactory**
Oracle Factory introduces a streamlined and efficient way for developers to integrate real-world data into blockchain applications. Leveraging the power of the iExec decentralized cloud infrastructure, Oracle Factory ensures the creation of reliable and trustworthy oracles.
Key features of Oracle Factory include:
- **Create Oracle** — This method allows for the creation of custom oracles from any API, with a limitation of one data return per oracle. This feature is pivotal in fetching specific, relevant data for decentralized applications.
- **Update Oracle** — This method ensures that the oracle stays current by fetching the latest data from its linked API. It maintains the oracle's relevance and accuracy, crucial for real-time data-dependent applications.
- **Read Oracle** — This method allows users to retrieve the value from the oracle.
With its cross-chain functionality, extending from the iExec Sidechain to networks like Ethereum and Polygon, Oracle Factory demonstrates remarkable versatility. It is a critical tool for developers looking to bridge the gap between blockchain and the real world, democratizing access to reliable data for DApps.
<div align="center">
[](https://www.npmjs.com/package/@iexec/iexec-oracle-factory-wrapper) [](/LICENSE)
</div>
## Installation
OracleFactory is available as an [npm package](https://www.npmjs.com/package/@iexec/iexec-oracle-factory-wrapper).
**npm:**
```sh
npm i @iexec/iexec-oracle-factory-wrapper
```
**yarn:**
```sh
yarn add @iexec/iexec-oracle-factory-wrapper
```
## Get started
### Browser
```ts
import { IExecOracleFactory } from "@iexec/iexec-oracle-factory-wrapper";
const web3Provider = window.ethereum;
const factory = new IExecOracleFactory(web3Provider);
```
### NodeJS
```ts
import { IExecOracleFactory, utils } from "@iexec/iexec-oracle-factory-wrapper";
const { PRIVATE_KEY } = process.env;
const signer = utils.getSignerFromPrivateKey(
"https://bellecour.iex.ec",
"your-private-key"
);
const factory = new IExecOracleFactory(signer);
```
## Documentation
- [OracleFactory documentation](https://tools.docs.iex.ec/tools/oracle-factory)
- [iExec Protocol documentation](https://protocol.docs.iex.ec)
## License
This project is licensed under the terms of the
[Apache 2.0](/LICENSE).