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
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.
Install from ClawHub
```bash
npx clawhub@latest install arbitrum-dapp-skill
```
Or browse the skill on [ClawHub](https://clawhub.ai/hummusonrails/arbitrum-dapp-skill).
Manual installation
```bash
git clone https://github.com/hummusonrails/arbitrum-dapp-skill.git ~/.claude/skills/arbitrum-dapp-skill
```
## Stack
| 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:
- [Rust](https://rustup.rs/) 1.81+
- [cargo-stylus](https://github.com/OffchainLabs/stylus-sdk-rs): `cargo install --force cargo-stylus`
- [Foundry](https://book.getfoundry.sh/getting-started/installation): `curl -L https://foundry.paradigm.xyz | bash && foundryup`
- [Docker](https://www.docker.com/products/docker-desktop/) for the local devnode
- [Node.js](https://nodejs.org/) 20+ and [pnpm](https://pnpm.io/)
## 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](https://www.youtube.com/watch?v=vsejiaOTmJA) | Watch the skill in action |
| [Arbitrum Stylus Quickstart](https://docs.arbitrum.io/stylus/quickstart) | Official getting-started guide |
| [Stylus SDK](https://github.com/OffchainLabs/stylus-sdk-rs) | Rust SDK for writing Stylus contracts |
| [Stylus Workshop](https://github.com/ArbitrumFoundation/stylus-workshop-gol) | Game of Life example project |
| [Nitro Devnode](https://github.com/OffchainLabs/nitro-devnode) | Local Arbitrum chain for development |
| [viem](https://viem.sh) | TypeScript interface for Ethereum |
| [wagmi](https://wagmi.sh) | React hooks for Ethereum |
## Contributing
Contributions welcome. Open an [issue](https://github.com/hummusonrails/arbitrum-dapp-skill/issues) or submit a [pull request](https://github.com/hummusonrails/arbitrum-dapp-skill/pulls).
## License
[MIT](LICENSE)