Thank you for your interest in contributing to YieldLadder! This guide covers the project structure and local development workflows.
YieldLadder is organised as a monorepo with three main components:
- Soroban Contracts (Rust): Cargo workspace in
contracts/ - Next.js Dashboard (TypeScript): Web app in
app/ - TypeScript SDK: Client library in
sdks/typescript/
- Rust toolchain with
wasm32-unknown-unknowntarget - Node.js 20+ and pnpm 9+
- Soroban CLI (for contract deployment and testing)
The contracts are organised as a Cargo workspace. To build all contracts:
cargo build --target wasm32-unknown-unknown --releaseRun tests:
cargo testNavigate to the app/ directory:
cd app
pnpm install
pnpm devThe dashboard will be available at http://localhost:3000.
Run typechecking:
pnpm typecheckNavigate to the sdks/typescript/ directory:
cd sdks/typescript
pnpm install
pnpm buildRun typechecking:
pnpm typecheck- Fork the repository
- Create a feature branch from
main - Make your changes and ensure all CI checks pass
- Submit a pull request with a clear description
All pull requests must pass CI checks including contract builds, Next.js typechecking, and SDK typechecking.