
This server brings a browser-based Solidity compiler directly into Claude. It's part of the Lyra Web3 Playground project, which provides a full IDE for smart contract development with support for compiler versions 0.6.x through 0.8.24. You get compilation, testing, and deployment capabilities without leaving your conversation. Useful when you're iterating on contract code with Claude and want immediate feedback on syntax errors, optimization warnings, or bytecode output. The underlying platform includes templates for tokens, NFTs, and DeFi contracts, plus deployment to multiple testnets. Think of it as having Remix available as a tool while you're prototyping or debugging Solidity with an AI pair programmer.
✨ Built by nich | GitHub | X/Twitter
[](https://github.com/nirholas/lyra-web3-playground) [](https://www.typescriptlang.org/) [](https://react.dev/) [](docs/ACCESSIBILITY.md) [](docs/ARCHITECTURE.md) [](https://x.com/nichxbt)A comprehensive open-source Web3 learning platform. Professional development environments, AI-assisted tools, security testing, and collaborative features — all in your browser.
Hosting note: the hosted demo at lyra.works is currently offline while hosting is being migrated. Clone the repo and run
npm install && npm run devto use every environment below athttp://localhost:3000.
| Tool | Description | Link |
|---|---|---|
| Web Sandbox | Full-featured web IDE with React, Vue, Python, live preview, Vim mode | /ide?type=web |
| Solidity IDE | Smart contract IDE with multi-version compiler (0.6.x - 0.8.24) | /ide?type=solidity |
| Full-Stack Playground | Build complete dApps with contract + frontend + live preview | /fullstack-demo |
| Interactive Sandbox | IDE with AI assistant, templates, and testnet deployment | /sandbox |
Open http://localhost:3000/innovation or enable "Innovation Mode" in the sandbox:
| Feature | Capability |
|---|---|
| AI Code Whisperer | Real-time vulnerability detection, voice control, auto-fix suggestions |
| Contract Time Machine | Version history, branching, state simulation |
| Security Testing Lab | Test contracts against reentrancy, flash loans, overflow attacks |
| Collaborative Arena | Code with AI teammates, participate in challenges |
| Neural Gas Oracle | ML-powered gas prediction and optimization |
| Cross-Chain Deployer | Deploy to 8+ chains with automated bridge setup |
Comprehensive accessibility support:
| Feature | Description |
|---|---|
| Dwell Click | Click by hovering — no mouse button required |
| Reading Guide | Horizontal line follows cursor position |
| Color Blind Filters | Protanopia, Deuteranopia, Tritanopia support |
| Text-to-Speech | Read content aloud with adjustable speed/pitch |
| Cognitive Support | Simplified mode, focus mode, extended timeouts |
| Code-to-English | Translates Solidity to plain English explanations |
See ACCESSIBILITY.md for complete documentation.
| Tool | URL | Description |
|---|---|---|
| IDE Hub | /ide | Choose Web Sandbox or Solidity IDE |
| Web Sandbox | /ide?type=web | HTML/CSS/JS/React/Vue/Python IDE |
| Solidity IDE | /ide?type=solidity | Smart contract development |
| Interactive Sandbox | /sandbox | Sandbox with AI assistant |
| Contract Playground | /playground | Template-based contract editor |
| Learning Playground | /learn | Interactive tutorials |
| Full-Stack Demo | /fullstack-demo | Contract + Frontend builder |
| Innovation Lab | /innovation | Experimental AI features |
| Markets | /markets | Live crypto prices & DeFi data |
| Explore | /explore | Community projects gallery |
| You are... | Lyra helps you... |
|---|---|
| 🌱 Complete beginner | Learn Solidity with step-by-step tutorials |
| 💻 Web developer | Transition to Web3 with familiar tools |
| 🎓 Student | Practice smart contracts without spending gas |
| 🔧 Builder | Prototype dApps quickly with templates |
| 👩🏫 Educator | Teach blockchain with interactive examples |
Run npm install && npm run dev, then pick an option below.
Option 1: Browse the tutorials
http://localhost:3000Option 2: Try the Solidity IDE
http://localhost:3000/ideOption 3: Follow a tutorial
http://localhost:3000/)/)/example/hello-world)/)/)/example/erc20-token)/) and describe your idea/ide)/playground)console.log/warn/error from your code in real-time/sandbox)We go far beyond standard accessibility. Our system includes futuristic features that make Web3 truly accessible to everyone:
Quick Profiles (one-click presets):
Vision Features:
Motor Accessibility:
Alt+A quick accessCognitive Support:
Screen Reader & Audio:
Developer-Friendly:
See ACCESSIBILITY.md for full documentation
/markets# Clone the repository
git clone https://github.com/nirholas/lyra-web3-playground.git
cd lyra-web3-playground
# Install dependencies
npm install
# Start development server
npm run dev
Open http://localhost:3000 in your browser.
The app runs without configuration, but wallet login, the backend API, RPC access and Supabase-backed features need credentials. Copy the example file and fill it in:
cp .env.example .env
| Variable | Purpose |
|---|---|
VITE_PRIVY_APP_ID | Privy application ID used for wallet / email login |
VITE_API_URL | Base URL of the backend API (defaults to http://localhost:3001) |
VITE_INFURA_API_KEY | Infura project ID for read-only RPC calls |
VITE_SUPABASE_URL | Supabase project URL |
VITE_SUPABASE_ANON_KEY | Supabase anon (public) key |
Every VITE_-prefixed value is inlined into the client bundle and is therefore
public — never put a private key or server secret in .env. Server-side secrets
belong in server/.env (see server/.env.example).
npm run build
npm run preview
├── src/
│ ├── components/ # React components
│ │ ├── Accessibility/ # Comprehensive a11y system
│ │ │ ├── AccessibilityButton.tsx # Floating button
│ │ │ ├── AccessibilityPanel.tsx # Settings panel
│ │ │ ├── DwellClick.tsx # Click-by-hovering
│ │ │ ├── ReadingGuide.tsx # Line highlighter
│ │ │ └── ColorBlindFilters.tsx # Color blind support
│ │ ├── CodePlayground/ # Monaco editor & compiler
│ │ ├── Tutorial/ # Tutorial system
│ │ ├── Sandbox/ # Premium sandbox IDEs
│ │ │ ├── WebSandbox.tsx # Web dev sandbox
│ │ │ ├── SoliditySandbox.tsx # Solidity IDE
│ │ │ ├── UnifiedSandbox.tsx # Generic sandbox wrapper
│ │ │ └── ShareModal.tsx # Project sharing modal
│ │ ├── Playground/ # Full-stack dApp playground
│ │ ├── FullStackPlayground/ # AI dApp builder
│ │ └── Consolidation/ # Token consolidation
│ ├── pages/ # Route pages
│ │ ├── SandboxPage.tsx # Premium IDE selection
│ │ ├── ExplorePage.tsx # Community project gallery
│ │ ├── SharedProjectPage.tsx # View shared projects
│ │ ├── MarketsPage.tsx # Market data dashboard
│ │ └── ExamplePage.tsx # Example with sandbox toggle
│ ├── services/ # API services
│ │ ├── community.ts # Sharing, likes, comments, forks
│ │ └── marketData.ts # CoinGecko & DeFiLlama integration
│ ├── hooks/ # Custom React hooks
│ │ └── useMarketData.ts # Market data hooks
│ ├── stores/ # Zustand state management
│ │ ├── accessibilityStore.ts # 40+ a11y settings
│ │ ├── i18nStore.ts # 10 languages + RTL
│ │ ├── themeStore.ts # Dark/light mode
│ │ └── walletStore.ts # Wallet connection
│ ├── styles/
│ │ ├── index.css # Main styles
│ │ └── accessibility.css # 580+ lines a11y CSS
│ ├── examples/ # Code examples (web3, ai)
│ └── utils/ # Helper functions
│ └── contractTemplates.ts # 40+ contract templates
├── server/ # Backend API (optional)
├── docs/ # Documentation
└── public/ # Static assets
| Category | Technology |
|---|---|
| Frontend | React 18, TypeScript, Vite |
| Styling | TailwindCSS |
| Editor | Monaco Editor |
| Web3 | ethers.js v6, viem |
| State | Zustand (with persist) |
| i18n | Custom store (10 languages + RTL) |
| Accessibility | Custom a11y system (WCAG 2.1 AAA+) |
| Database | Supabase |
| Testing | Vitest |
| Deployment | Vercel, Netlify, Docker |
| Document | Description |
|---|---|
| Getting Started | New to blockchain? Start here! |
| Quick Start Guide | Get up and running locally |
| IDE Guide | All development environments & URLs |
| Sandbox Guide | Premium sandbox features |
| Innovation Lab | AI & experimental features |
| Playgrounds | All playground components |
| Architecture Overview | System design |
| Backend API | API reference |
| Deployment Guide | Deploy your own instance |
| Security | Security practices |
| Accessibility | A11y features and usage |
No! Run npm run dev and open http://localhost:3000 in your browser. Everything runs in your browser.
No! You can learn and practice without any crypto. The IDE has a "JavaScript VM" mode that simulates a blockchain locally. When you're ready to deploy for real, you'll need MetaMask and testnet ETH (which is free).
Yes, it is free to run. No hidden fees, no premium tier. See the LICENSE file for usage terms.
/faq for common issuesAbsolutely! That's one of the main use cases. You can share links to specific examples, and students can code along in their browsers. No setup required.
Please open an issue! We appreciate all feedback.
Contributions are welcome! Please read our Contributing Guide for details on:
[type] Clear description in plain English (emoji at end) 🎉
Example: [add] Keyboard navigation for dropdown menus ♿
Why this format?
See CONTRIBUTING.md for full guidelines.
Check out issues labeled good first issue to get started.
All rights reserved. See the LICENSE file for details.
If you find this project useful, please consider giving it a ⭐
Built with ❤️ by nich
Full documentation site: https://nirholas.github.io/lyra-web3-playground/