Automated quality analysis for Grasshopper definitions. Bring software engineering best practices to computational design.
Perfect for: Daily work, quick checks, real-time feedback
β
Zero setup - Works immediately in Grasshopper
β
Real-time feedback - See quality score as you work
β
Performance profiling - Identify bottlenecks instantly
β
Auto-fix - Automatically fix common issues
β
Offline - No internet or external tools needed
π 5-Minute Quick Start | π User Guide
Perfect for: Deep analysis, refactoring, AI-powered suggestions
β
Complete accuracy - 100% precise GHX/JSON analysis
β
AI suggestions - Claude-powered recommendations
β
File analysis - Analyze saved files without opening
β
Version comparison - Track changes between versions
π Setup Guide | π User Guide
| Scenario | Use |
|---|---|
| π Working in Grasshopper | Standalone |
| β‘ Need instant feedback | Standalone |
| π Quick quality check (30 sec) | Standalone |
| π― Find performance bottlenecks | Standalone |
| π§ Deep refactoring | MCP + Claude |
| π€ Want AI suggestions | MCP + Claude |
| π Analyze saved files | MCP + Claude |
| π€ Before sharing files | Both! |
TL;DR: Use Standalone for daily work (90%), MCP+Claude for deep analysis (10%)
# 1. Download
git clone https://github.com/dongwoosuk/grasshopper-quality-analyzer
cd grasshopper-quality-analyzer/standalone
# 2. Open Grasshopper
# 3. Add Python component
# 4. Choose a component (Health Check, Performance Profiler, etc.)
# 5. Done!# 1. Install dependencies
cd mcp
pip install -r requirements.txt
# 2. Configure Claude Desktop
# See docs/installation-mcp.md for detailed instructions
# 3. Start server
python mcp_server.py
# 4. Ask Claude
"Analyze this GHX file: [path]"- Real-time Performance Analysis - Measure component execution times
- 3 Profiling Modes: Quick (1 pass), Detailed (5 passes), Live monitoring
- Bottleneck Detection - Automatically identify slow components (>100ms)
- Performance Score - 0-100 scoring system with optimization suggestions
- Plugin Breakdown - Per-plugin performance analysis
- Smart Suggestions - Context-aware optimization recommendations
- GH016: Slow Component Execution (warning, >100ms)
- GH017: Computational Bottleneck (info, >20% total time)
- GH018: Heavy Preview Geometry (info, large geometries)
- Preview Control - Simple preview enable/disable
- Display Mode Manager - Icon/Name/Both per component
- Split from single Display component for better modularity
- Components: 5 β 9 (+80%)
- Code: ~1,500 β ~3,900 lines (+160%)
- Lint Rules: 15 β 18 (+20%)
β Errors (2)
- Dangling Inputs - Unconnected required inputs
- Runtime Errors - Components with execution errors
- Dangling Outputs - Unused component outputs
- Unnamed Parameters - Sliders/panels without names
- Runtime Warnings - Components with warnings
- Slow Component Execution - Components >100ms β‘ NEW v0.3.0
- And more...
βΉοΈ Info (10)
- Missing Groups - Large definitions without organization
- Preview Disabled - Hidden components
- Plugin Dependencies - External plugins used
- Computational Bottleneck - Components >20% total time β‘ NEW v0.3.0
- Heavy Preview Geometry - Large preview geometries β‘ NEW v0.3.0
- And more...
- π Health Score (0-100) - Overall quality metric
- π Detailed Statistics - Component counts, categories
- π Issue Detection - Find problems automatically
- β‘ Performance Profiler β NEW v0.3.0 - Bottleneck identification, execution time measurement
- π§ Parameter Namer - Batch rename sliders/panels by component type
- π Auto Alignment - Smart layout organization
- π Preview Control β NEW v0.3.0 - Enable/disable all previews
- π¨ Display Mode Manager β NEW v0.3.0 - Icon/Name/Both control per component
- π Python I/O Manager - Auto-manage Python script inputs/outputs
- π€ Smart Suggestions - Claude recommends improvements
- π Best Practices - Learn industry standards
- π Version Comparison - See what changed
- π Performance Analysis - AI-powered optimization advice
Architecture Firm Pilot Project
| Metric | Before | After | Improvement |
|---|---|---|---|
| Quality Score | 42/100 | 82/100 | +95% β¬οΈ |
| Review Time | 2 hours | 30 min | -75% β¬οΈ |
| Team Issues | 40/week | 5/week | -87% β¬οΈ |
| Performance Issues | Unknown | Identified | 100% visibility |
"This tool changed how we think about code quality in Grasshopper. It's like ESLint for computational design."
β Dongwoo Suk, Computational Designer
- Quick Start (Standalone) - 5 minutes
- MCP Setup Guide - 10 minutes
- Best Practices - Quality standards
- Standalone User Guide - Complete guide (νκΈ)
- MCP User Guide - How to use with Claude (νκΈ)
- API Reference - For developers
- Installation (Standalone) - Detailed setup
- Installation (MCP) - MCP server setup
- Changelog - Version history
- πΊπΈ English (Default)
- π°π· νκ΅μ΄ - Standalone Guide | MCP Guide
- Standalone version (v0.1.0-alpha)
- MCP + Claude integration
- 15+ lint rules
- Public alpha release
- Performance profiler (v0.3.0-alpha)
- Beta release (v0.4.0-beta)
- Component alignment improvements
- Auto-fix enhancements
- Documentation completion
- Community feedback integration
- v1.0 stable release
- Food4Rhino listing
- First 100 users
- Community building
- 500+ active users
- 15+ firm adoptions
- Industry standard tool
- Plugin marketplace integration
We welcome contributions! Here's how you can help:
- β Star this repo - Show your support
- π Report bugs - Create an issue
- π‘ Suggest features - Start a discussion
- π Improve docs - Submit a PR
- π§ Write code - Check open issues
This project is licensed under the MIT License - see the LICENSE file for details.
TL;DR: Free to use, modify, and distribute. Just keep the license notice.
- Grasshopper Community - For making computational design accessible
- Pilot Testing Team - For supporting this project and providing valuable feedback
- Claude (Anthropic) - For AI-powered analysis capabilities
- All Beta Testers - For valuable feedback and bug reports
Dongwoo Suk
Computational Designer
- π GitHub: @dongwoosuk
- πΌ LinkedIn: dongwoosuk
- π§ Email: [email protected]
The Problem: Computational designers spend 2+ hours on code reviews, with 40+ questions per week about unclear Grasshopper definitions. There's no quality standard, no automated checking, no performance profiling, no best practices.
The Solution: Bring software engineering tools to computational design. Automated quality checks, performance profiling, instant feedback, industry standards.
The Impact:
- β±οΈ Save 75% on review time
- π Improve quality by 95%
- π€ Reduce team friction by 87%
- β‘ Identify performance bottlenecks instantly
Join us in improving AEC industry productivity! π
- π Python 3.8+
- π¦ ~3,900 lines of code
- π ~2,000 lines of documentation
- β 18 quality checks (GH001-GH018)
- π¨ 2 versions (Standalone + MCP)
- π§ 9 standalone components
- β‘ 3 performance analysis modes
- π’ Pilot tested at architecture firm
- π₯ Growing community
- GitHub: grasshopper-quality-analyzer
- Issues: Report a bug
- Discussions: Ask questions
- Releases: Download
Built with β€οΈ for the AEC community
Improving computational design, one definition at a time.
Get Started with Standalone β’ Setup MCP Version β’ View Changelog