@buildeross/sdk
v0.3.2
Published
SDK for interacting with Nouns Builder contracts and subgraphs
Readme
@buildeross/sdk
SDK for interacting with Builder contracts and subgraphs.
Installation
pnpm install @buildeross/sdkEntry Points
@buildeross/sdk- combined exports@buildeross/sdk/contract- contract ABIs and read helpers@buildeross/sdk/subgraph- subgraph query helpers and generated GraphQL types
Quick Usage
Contract Helpers
import {
getDAOAddresses,
getProposalState,
ProposalState,
} from '@buildeross/sdk/contract'
import { CHAIN_ID } from '@buildeross/types'
const addresses = await getDAOAddresses(CHAIN_ID.BASE, '0x...')
const state = await getProposalState(CHAIN_ID.BASE, '0xGovernorAddress', '0x01')
if (state === ProposalState.Active) {
// proposal is active
}Subgraph Helpers
import { encodedDaoMetadataRequest, getEscrowDelegate } from '@buildeross/sdk/subgraph'
import { CHAIN_ID } from '@buildeross/types'
const metadataCalls = await encodedDaoMetadataRequest(CHAIN_ID.ETHEREUM, '0x...')
const delegate = await getEscrowDelegate(
'0xTokenAddress',
'0xTreasuryAddress',
CHAIN_ID.BASE
)Main Exports
Contract
- ABIs:
auctionAbi,tokenAbi,governorAbi,managerAbi,treasuryAbi,metadataAbi, and more - Requests:
getDAOAddresses,getMetadataAttributes,getPropertyItems,getProposalState,getAuctionRewards
Subgraph
- Requests:
daoQuery,proposalQuery,proposalsQuery,tokensQuery,dashboardQuery,exploreQueries,homepageQuery,feedQuery, and more - Generated types/enums are exported from
sdk.generated.tsvia@buildeross/sdk/subgraph
Development
Prerequisites
- Node.js 18+
- pnpm 8+
Setup
# Install dependencies
pnpm install
# Build package
pnpm build
# Generate GraphQL types
pnpm codegen
# Generate contract ABIs
pnpm generate-abis
# Type-check
pnpm type-check
# Lint
pnpm lintScripts
pnpm build- build for productionpnpm codegen- generate GraphQL typespnpm generate-abis- regenerate contract ABI filespnpm type-check- run TypeScript checkspnpm lint- run lintingpnpm clean- remove build artifacts
Dependencies
Runtime Dependencies
graphql^16.11.0graphql-request^7.1.2graphql-tag^2.12.6
Peer Dependencies
@buildeross/constants>=0.3.0@buildeross/types>=0.3.0@buildeross/utils>=0.3.0@sentry/nextjs^9.22.0 (optional)viem^2.47.1wagmi^2.18.1
License
MIT License - see LICENSE file for details.
