This repository contains a complete workshop implementation of an oracle-backed stablecoin system that integrates Chainlink Data Streams for real-time price feeds and Chainlink CCIP for cross-chain functionality on Solana and Ethereum.
Built on Official Chainlink Tools:
- Chainlink Data Streams SDK - Official SDK for real-time price feed integration
- Chainlink Solana CCIP Starter Kit - Official starter kit for cross-chain functionality
- Real-time price integration via Chainlink Data Streams SDK
- Oracle program for on-chain price verification and storage
- Stablecoin program with collateral management and minting logic
- Cross-chain transfers using Chainlink CCIP
- Multisig authority management with SPL Token multisig integration
- Production-ready testing with comprehensive test suites
- Harry - Chainlink Data Streams and Oracle Program implementation
- Jae - Stablecoin integration with Oracle Program and Cross-Chain CCIP configuration
Ready to build? Follow the complete step-by-step guide:
β INSTRUCTIONS.md - Complete prerequisites, installation, and deployment walkthrough
For Korean instructions, see INSTRUCTIONS_KR.md.
If you encounter any issues during the workshop, check the troubleshooting section in INSTRUCTIONS.md.
solana-stablecoin-workshop/
βββ README.md # This overview and instructions
βββ INSTRUCTIONS.md # Complete step-by-step deployment guide
βββ oracle/ # Chainlink Data Streams & Oracle Program
βββ cross-chain-stablecoin/ # Stablecoin & CCIP Integration
βββ solana-starter-kit/ # CCIP Solana integration scripts and libraries
βββ smart-contract-examples/ # Ethereum smart contracts for CCIP
graph LR
subgraph "π Data Streams (Harry)"
DS[Chainlink Data Streams<br/>Real-time SOL/USD]
OC[Rust Client<br/>Fetches & Processes]
OP[Oracle Program<br/>Verifies & Stores]
DS --> OC --> OP
end
subgraph "πͺ Stablecoin System (Jae)"
SP[Stablecoin Program<br/>Mint/Burn Logic]
MS[SPL Token Multisig<br/>1-of-3 Authority]
OP --> SP
SP --> MS
end
subgraph "π Cross-Chain CCIP (Jae)"
CP[CCIP Pool Program<br/>Solana Side]
EP[Ethereum Pool<br/>ERC20 Token]
MS --> CP
CP <--> EP
end
subgraph "π Security & Testing"
T1[Oracle Tests<br/>Real Data Streams]
T2[Stablecoin Tests<br/>12 Test Suite]
T3[Integration Tests<br/>End-to-End]
OP -.-> T1
SP -.-> T2
CP -.-> T3
end
This workshop leverages key Chainlink development tools:
- Chainlink Data Streams SDK - Real-time price feed integration
- Chainlink Data Streams Report - Report decoding and verification
- CCIP Solana Starter Kit - Cross-chain functionality
- Anchor Framework - Solana program development
- SPL Token Program - Token and multisig management
- Solana CLI - Blockchain interaction and deployment
- Rust - Oracle client and program development
- TypeScript - Testing and deployment scripts
- Hardhat - Ethereum smart contract deployment
The workshop covers:
- Phase 1: Oracle Program Deployment (Data Streams integration)
- Phase 2: Stablecoin Program Deployment (Oracle integration)
- Phase 3: CCIP Pool Setup (Cross-chain configuration)
- Phase 4: Ethereum Side Deployment (ERC20 token and pool)
- Phase 5: Cross-Chain Configuration (Solana β Ethereum)
- Phase 6: Testing and Token Operations (End-to-end validation)
- Phase 7: Cross-Chain Transfer Execution (Live transfers)
Each component includes thorough testing:
cd oracle
anchor test # Real Chainlink Data Streams integration
cd cross-chain-stablecoin/stablecoin-program
./test-individual.sh all # 12 comprehensive tests
# Individual test categories
./test-individual.sh oracle # Oracle integration (3 tests)
./test-individual.sh stablecoin # Program logic (4 tests)
./test-individual.sh integration # End-to-end (4 tests)
./test-individual.sh ccip # CCIP multisig (1 test)
- β Real Chainlink Data Integration - Live SOL/USD price feeds
- β Oracle Program Verification - On-chain price storage and retrieval
- β Stablecoin Minting/Burning - Complete collateral management
- β Cross-Program Invocation - Oracle β Stablecoin integration
- β Multisig Authority - SPL Token multisig operations
- β CCIP Cross-Chain - Solana β Ethereum transfers
- Integrate real-time price feeds using Chainlink Data Streams SDK
- Build Rust client for fetching and processing price reports
- Implement Solana oracle program for on-chain price verification
- Handle report compression, validation, and storage
- Build oracle-backed stablecoin with collateral management
- Implement Cross-Program Invocation (CPI) between programs
- Configure SPL Token multisig for authority management
- Set up CCIP for cross-chain token transfers
- Deploy and configure Ethereum side components
Each component includes comprehensive documentation:
- Oracle System - Complete Data Streams and Oracle documentation
- Stablecoin System - Stablecoin and CCIP integration guide
By completing this workshop, you will have:
β
Built a datastreams-backed stablecoin system
β
Implemented multisig authority management
β
Configured cross-chain transfers via CCIP
β
Deployed to both Solana and Ethereum networks