|
| 1 | + |
| 2 | + |
| 3 | +# Silent Data [Rollup] Providers |
| 4 | + |
| 5 | +## Table of Contents |
| 6 | + |
| 7 | +- [Introduction](#introduction) |
| 8 | +- [Features](#features) |
| 9 | +- [Prerequisites](#prerequisites) |
| 10 | +- [Troubleshooting](#troubleshooting) |
| 11 | +- [License](#license) |
| 12 | + |
| 13 | +## Introduction |
| 14 | + |
| 15 | +This monorepo contains multiple packages for custom providers for Silent Data [Rollup], compatible with ethers.js and Hardhat plugins. |
| 16 | + |
| 17 | +## Features |
| 18 | + |
| 19 | +These packages offer several key features: |
| 20 | + |
| 21 | +1. **RPC Call Interception**: Automatically intercepts RPC calls and appends necessary authentication headers, simplifying the integration process. |
| 22 | + |
| 23 | +2. **Ethers.js Compatibility**: Seamlessly integrates with ethers.js, allowing developers to use familiar tools and patterns. |
| 24 | + |
| 25 | +3. **Multiple Provider Types**: Supports various provider types, including basic usage, contract interaction, Fireblocks integration, and Hardhat compatibility. |
| 26 | + |
| 27 | +4. **Flexible Authentication**: Transparently handles authentication, supporting both private key and Fireblocks-based methods. |
| 28 | + |
| 29 | +5. **Simplified Contract Interactions**: Provides a `SilentDataRollupContract` class that streamlines interactions with smart contracts, automatically handling method signing when necessary. |
| 30 | + |
| 31 | +6. **Network Abstraction**: Offers a `NetworkName` enum to easily switch between different Silent Data [Rollup] networks (e.g., testnet, mainnet). |
| 32 | + |
| 33 | +7. **Customizable Configuration**: Allows developers to configure providers with custom RPC URLs, network settings, and authentication details. |
| 34 | + |
| 35 | +These features make it easier for developers to integrate Silent Data [Rollup] into their Ethereum-based applications, handling the complexities of authentication and network interactions behind the scenes. |
| 36 | + |
| 37 | +## Prerequisites |
| 38 | + |
| 39 | +- Node.js (version 18 or higher) |
| 40 | +- npm |
| 41 | +- Basic knowledge of Ethereum and smart contracts |
| 42 | + |
| 43 | +## Packages and Integration Options |
| 44 | + |
| 45 | +- [Core](./packages/core/README.md) |
| 46 | +- [Custom RPC](./packages/custom-rpc/README.md) |
| 47 | +- [Ethers Provider](./packages/ethers-provider/README.md) |
| 48 | +- [Fireblocks Ethers Provider](./packages/ethers-provider-fireblocks/README.md) |
| 49 | +- [Hardhat Plugin](./packages/hardhat-plugin/README.md) |
| 50 | +- [Fireblocks Hardhat Plugin](./packages/hardhat-plugin-fireblocks/README.md) |
| 51 | + |
| 52 | +## Troubleshooting |
| 53 | + |
| 54 | +If you encounter any issues, please check the following: |
| 55 | + |
| 56 | +1. Ensure you're using the correct RPC URL for your desired network. |
| 57 | +2. Verify that your private key is correctly set and has sufficient funds. |
| 58 | +3. Ensure that your token is still active on the Silent Data AppChains dashboard. |
| 59 | +4. If using Fireblocks, validate your user and API keys. |
| 60 | + |
| 61 | +## License |
| 62 | + |
| 63 | +This project is licensed under the [MIT License](LICENSE). |
0 commit comments