Scaffold-ICP: Complete ICP Development Framework & Learning Ecosystem
Project Highlights
Scaffold-ICP is a modern, type-safe development framework designed to accelerate Internet Computer (ICP) dApp development. We currently have a successful Proof of Concept and are proposing to build a complete ICP learning and development ecosystem.
Our vision is to become the go-to development framework for ICP dApps, providing the same developer experience that Create React App and Next.js brought to traditional web development.
Target Users:
- Web2 developers transitioning to ICP
- Blockchain developers seeking faster development cycles
- Educational institutions teaching ICP development
- Teams building production-ready dApps
Problems Weโre Solving:
- Steep learning curve for ICP development
- Lack of standardized development patterns
- Time-consuming setup and configuration
- Limited educational resources for Motoko/ICP
Our Proposed Four-Component Ecosystem:
- Motoko-lings (learning foundation) - Planned
- Scaffold-ICP Core (production development) - PoC Complete
- SpeedRunICP (challenge system) - Planned
- Extension Templates (scaling tools) - Planned
Features
Current PoC Achievements:
Full-stack TypeScript Integration: Seamless type safety from Motoko backend to React frontend
IC Reactor Integration: Type-safe React hooks for canister interactions
Multi-network Deployment: Automated deployment to local, playground, and mainnet
Modern Architecture: Next.js 15 with App Router, Yarn workspaces, and ES modules
Developer Tooling: Hot reload, automatic Candid generation, and script automation
Planned Features (In Development):
Interactive Learning: Motoko-lings exercises with automated validation
Challenge System: Progressive skill building through SpeedRunICP
Extension Marketplace: Curated extensions for specialized use cases
Multi-canister Support: Advanced orchestration and state management
Production-Ready Templates: Enterprise-grade patterns and components
Supported Standards:
- ICRC token standards
- Internet Identity integration
- Candid interface generation
- Multi-canister orchestration
How to Install
Current PoC Installation:
Prerequisites:
- Node.js 22+
- Yarn package manager
- DFX (Internet Computer SDK)
Step 1: Install DFX
sh -ci "$(curl -fsSL https://internetcomputer.org/install.sh)"
dfx --version
Step 2: Clone and Setup
git clone https://github.com/gianalarcon/scaffold-icp.git
cd scaffold-icp
yarn install
Step 3: Start Development
# Start local ICP replica
yarn chain
# Deploy canisters
yarn deploy
# Start frontend
yarn start
Your dApp will be available at http://localhost:3000
with hot reload enabled.
Planned Installation (Full Release):
# Create new project
npx create-icp@latest
Documentation
Current PoC Documentation:
- Basic setup and usage guide
- TypeScript integration examples
- Deployment instructions
Planned Documentation:
- Getting Started Guide: Step-by-step tutorial for first dApp
- API Reference: Complete TypeScript interfaces and hooks
- Architecture Guide: Best practices and patterns
- Motoko-lings Curriculum: 20+ interactive exercises
- SpeedRunICP Challenges: Progressive skill-building challenges
- Extension Development: How to create and publish extensions
Documentation will be available at: https://scaffold-icp.dev
(coming soon)
Dependencies
Core Dependencies:
- Next.js 15+
- TypeScript 5+
- IC Reactor for type-safe canister interactions
- Agent-JS for IC communication
- DFX SDK for canister management
Development Dependencies:
- Vite for fast development
- Jest for testing
- Playwright for E2E testing
- ESLint/Prettier for code quality
Runtime Requirements:
- Node.js 18+
- Modern browser with WebAssembly support
License
MIT License - Open source and permissive for both commercial and non-commercial use.
Resources
- GitHub Repository: GitHub - gianalarcon/scaffold-icp: Scaffold-ICP: toolkit for building dApps on ICP
- Demo Video: Screencastify
- Documentation: https://scaffoldicp.com/ [Coming Soon]
- Twitter: [@scaffold_icp] [Coming Soon]
Future Plans
Phase 1: Core Framework Enhancement
- CI/CD pipeline setup
- Multi-canister support
- Motoko-lings MVP (20 core lessons)
- Comprehensive testing framework
Phase 2: SpeedRunICP & Component Library
- Challenge framework with 4 progressive challenges
- Core component library
- Interactive documentation site
- Extension system architecture
Phase 3: Advanced Features & Launch
- Curated Extensions: Internet Identity Plus, ICRC Token Suite, IC NFT Studio
- Community contribution guidelines
- Stable release preparation
6-Month Targets:
- 50+ projects built with Scaffold-ICP
- 100+ developers complete Motoko-lings
- 300+ SpeedRunICP completions
- 90% reduction in initial setup time
12-Month Vision:
- Recognized standard framework for ICP dApps
- 10+ production dApps using Scaffold-ICP
- Self-sustaining extension marketplace
- Integration with educational institutions
Current Status: We have successfully completed a Proof of Concept that demonstrates the core framework capabilities. We are now seeking grant support to build the complete four-component ecosystem outlined in our proposal.
Grant Support: This project is being developed with support from the DFINITY Foundation Grant Program.
Weโre excited to build the future of ICP development tooling! Follow our progress and join the discussion.