@trustroot/sdk
v0.1.1
Published
A TypeScript SDK for interacting with the Ethereum Attestation Service (EAS). This SDK supports registering schemas, creating attestations, and validating attestations across multiple EAS-supported networks (e.g., Ethereum Mainnet, Sepolia, Optimism, Arbi
Downloads
6
Readme
@trustroot/sdk
A TypeScript SDK for interacting with the Ethereum Attestation Service (EAS). This SDK supports registering schemas, creating attestations, and validating attestations across multiple EAS-supported networks (e.g., Ethereum Mainnet, Sepolia, Optimism, Arbitrum, Base).
Features
- Schema Registration: Register custom schemas with the EAS SchemaRegistry.
- Attestation Creation: Create onchain attestations with flexible schema support.
- Attestation Validation: Verify attestation existence, schema, revocation, and data.
- Attestation Revocation: Revoke existing attestations (if marked revocable).
- Multi-Network Support: Operate on Ethereum Mainnet, Sepolia (testnet), Optimism, Arbitrum, Base, Linea, and Scroll.
- Type-Safe: Built with TypeScript for robust development.
Installation
Clone the Repository: Clone the repository to your local machine:
git clone https://github.com/trustRootOrg/sdk.git cd trustRoot-sdkInstall Dependencies: Install the required dependencies using npm:
npm install
Build
To build the SDK, run the following command:
npm run buildRun Tests
Execute the unit tests using the following command:
npm run testQuick Start
import { SDK } from '@trustroot/sdk';
import { Wallet } from '@ijstech/eth-wallet';
import * as dotenv from 'dotenv';
dotenv.config();
const wallet = new Wallet(process.env.RPC_URL!, { privateKey: process.env.PRIVATE_KEY! });
const sdk = new SDK(wallet);Documentation
Detailed documentation is available in the docs/ directory:
- Getting Started: Installation and basic usage.
- API Reference: SDK methods and interfaces.
- Schemas: Details about schema registration and usage.
- Attestation Flow: Overview of the attestation process.
- Sequence Diagram: Visual representation of the attestation flow.
Supported Networks
- Ethereum Mainnet (Chain ID: 1)
- Sepolia Testnet (Chain ID: 11155111)
- Optimism (Chain ID: 10)
- Arbitrum One (Chain ID: 42161)
- Base (Chain ID: 8453)
See networks.ts for contract addresses and details.
License
This project is licensed under the MIT License. See the LICENSE file for details.
