A Claude Code skill for building high-performance dApps on Arbitrum with Stylus Rust and Solidity.
Demo · Documentation · Quick Start · Report a Bug
What it does
This skill gives Claude Code deep knowledge of the Arbitrum development stack so it can help you:
- Scaffold a monorepo with Stylus Rust contracts, Solidity contracts, and a React frontend
- Write and test smart contracts using the Stylus Rust SDK or Foundry
- Run a local Arbitrum devnode for development
- Build frontend interfaces with viem and wagmi
- Deploy contracts to Arbitrum Sepolia and Arbitrum One
- Interop across contract languages (Stylus and Solidity)
Quick Start
bash <(curl -s https://raw.githubusercontent.com/hummusonrails/arbitrum-dapp-skill/main/install.sh)Then start Claude Code and ask it to build something:
> Create a Stylus contract for an ERC-20 token with a React frontend
That's it. The skill loads automatically.
Manual installation
git clone https://github.com/hummusonrails/arbitrum-dapp-skill.git ~/.claude/skills/arbitrum-dapp-skillStack
| Layer | Tool | Notes |
|---|---|---|
| Smart contracts (Rust) | stylus-sdk v0.10+ |
Compiled to WASM, runs on Stylus VM |
| Smart contracts (Solidity) | Solidity 0.8.x + Foundry | Standard EVM path on Arbitrum |
| Local chain | nitro-devnode |
Docker-based with pre-funded accounts |
| Contract CLI | cargo-stylus |
Check, deploy, export-abi |
| Contract toolchain | forge / cast |
Build, test, deploy, interact |
| Frontend | viem + wagmi | Type-safe chain interaction |
| Package manager | pnpm | Workspace-friendly, fast |
Prerequisites
The skill will guide you through installing these, but for reference:
Usage examples
Once installed, start a Claude Code session and try:
> Help me create a new Arbitrum dApp
> Write a Stylus contract that implements an ERC-20 token
> Set up my local devnode and deploy my contract
> Add a frontend that reads from my deployed contract
> Help me write tests for my Stylus contract
Skill structure
arbitrum-dapp-skill/
├── SKILL.md # Main skill definition
├── references/
│ ├── stylus-rust-contracts.md # Stylus SDK patterns and examples
│ ├── solidity-contracts.md # Solidity on Arbitrum + Foundry
│ ├── frontend-integration.md # viem + wagmi patterns
│ ├── local-devnode.md # Nitro devnode setup
│ ├── deployment.md # Testnet and mainnet deployment
│ └── testing.md # Testing strategies
├── install.sh
└── README.md
Resources
| Resource | Description |
|---|---|
| Demo Video | Watch the skill in action |
| Arbitrum Stylus Quickstart | Official getting-started guide |
| Stylus SDK | Rust SDK for writing Stylus contracts |
| Stylus Workshop | Game of Life example project |
| Nitro Devnode | Local Arbitrum chain for development |
| viem | TypeScript interface for Ethereum |
| wagmi | React hooks for Ethereum |
Contributing
Contributions welcome. Open an issue or submit a pull request.