Tech Ecosystem Analyzer
by windowh1
This skill should be used when users request comprehensive analysis of technology ecosystems, comparing multiple libraries/frameworks/tools with quantitative metrics from GitHub and web research. Trigger words include "ecosystem analysis", "compare libraries", "analyze React/Vue/Python ecosystem", "trending libraries", "technology stack comparison", or requests to evaluate multiple technical tools with data-driven insights.
Skill Details
Repository Files
7 files in this skill directory
name: tech-ecosystem-analyzer description: This skill should be used when users request comprehensive analysis of technology ecosystems, comparing multiple libraries/frameworks/tools with quantitative metrics from GitHub and web research. Trigger words include "ecosystem analysis", "compare libraries", "analyze React/Vue/Python ecosystem", "trending libraries", "technology stack comparison", or requests to evaluate multiple technical tools with data-driven insights.
Tech Ecosystem Analyzer
Overview
This skill enables systematic, data-driven analysis of technology ecosystems through a combination of web research, GitHub API data collection, quantitative scoring, and comprehensive documentation. It transforms subjective technology selection into objective, metrics-based decision-making.
Unlike simple web research, this skill produces:
- Quantitative rankings based on GitHub metrics (stars, forks, growth rates)
- Automated data collection via custom Python scripts
- Dual output: raw data (JSON) + analysis report (Markdown)
- Comparative analysis with scoring algorithms
- Trend predictions and actionable recommendations
When to Use This Skill
Use this skill when users request any of the following:
- Technology stack evaluation: "Compare React state management libraries"
- Ecosystem trend analysis: "What are the latest trends in the Python data science ecosystem?"
- Library/framework comparison: "Analyze Vue.js vs React vs Svelte with data"
- Tool selection research: "Which GraphQL client should we use?"
- Open source project evaluation: "Compare testing frameworks for JavaScript"
- Technology adoption decisions: "Should we migrate from Redux to Zustand?"
- Competitive technical analysis: "Compare popular CI/CD tools"
Key indicators:
- User requests comparison of multiple (3+) libraries/tools
- Request implies need for quantitative data (GitHub stats, growth rates)
- User wants trend analysis or future predictions
- Decision-making context (choosing between options)
- Request mentions "latest", "trending", "popular", "best"
Do NOT use this skill when:
- Analyzing a single library/tool (use web-research-documenter instead)
- No quantitative comparison needed
- Focus is purely qualitative (best practices, tutorials)
Workflow
Follow this systematic five-step workflow for ecosystem analysis:
Step 1: Clarify Scope and Output Requirements
Before starting analysis, confirm with the user:
- Which libraries/frameworks/tools to analyze (minimum 3 recommended)
- Output directory location for results
- Any specific metrics of interest (performance, bundle size, etc.)
Example interaction:
User: "Analyze React state management trends"
Claude: "I'll analyze the React state management ecosystem. I recommend including:
- Redux (traditional standard)
- Zustand (modern lightweight)
- Jotai (atomic pattern)
- TanStack Query (server state)
- Recoil (if desired)
Where would you like me to save the analysis results?"
Step 2: Conduct Multi-Angle Web Research
Execute 2-3 complementary web searches to gather comprehensive context about the ecosystem:
Search strategy:
- Search 1 (Broad): Overall ecosystem trends and library names
- Example: "React state management 2024 2025 Redux Zustand Jotai"
- Search 2 (Comparative): Direct comparisons and decision guides
- Example: "Redux vs Zustand vs Jotai comparison 2024"
- Search 3 (Version-specific): Latest updates and features
- Example: "Redux Toolkit Zustand latest version features 2024"
Tool usage:
// Execute searches in parallel
mcp-server-search__web_search(query="[broad ecosystem query]", max_results=10)
mcp-server-search__web_search(query="[comparison query]", max_results=10)
mcp-server-search__web_search(query="[version-specific query]", max_results=10)
What to extract from search results:
- Current version numbers and release dates
- Key features and differentiators
- Community sentiment and adoption trends
- Migration patterns (what people are moving from/to)
- Integration patterns with other tools
Step 3: Generate GitHub Data Collection Script
Create a Python script to automate GitHub API data collection and analysis. Use the template in scripts/collect_github_data.py as a foundation.
Script must include:
- Library definitions with GitHub repo paths
- GitHub API fetching function
- Popularity score calculation (weighted algorithm)
- Growth rate estimation
- JSON data export
- Console output with rankings
Key metrics to collect:
- Stars (primary popularity indicator)
- Forks (community contribution level)
- Open issues (maintenance health)
- Last update timestamp (activity level)
- Watchers
- Creation date (project age)
- License, language, description
Popularity scoring algorithm: Use weighted scoring to normalize and compare different-sized projects:
weights = {
"stars": 0.4, # Primary popularity indicator
"forks": 0.2, # Community engagement
"watchers": 0.1, # Active interest
"recent_activity": 0.3 # Maintenance health
}
# Normalize against realistic maximums for the ecosystem
star_score = min(stars / max_stars, 1.0) * weights["stars"]
# ... similar for other metrics
total_score = sum(all_scores) * 100 # Scale to 0-100
Growth rate calculation:
age_days = (now - created_date).days
avg_stars_per_day = stars / max(age_days, 1)
if avg_stars_per_day > 50: return "Very High"
elif avg_stars_per_day > 20: return "High"
elif avg_stars_per_day > 5: return "Medium"
else: return "Low"
File location:
Save script to: {output_directory}/collect_github_data.py
Step 4: Execute Data Collection
Run the Python script using desktop-commander process execution:
desktop-commander__start_process(
command=f"cd {output_directory} && python3 collect_github_data.py",
timeout_ms=30000
)
Expected outputs:
- Console summary with rankings
- JSON file:
{output_directory}/[ecosystem]_data.json
Verify data quality:
- All libraries successfully fetched
- No API rate limit errors
- Popularity scores calculated
- JSON properly formatted
Step 5: Synthesize Comprehensive Analysis Report
Create a detailed Markdown report using the template structure below. Write in chunks (25-30 lines per write_file call) using desktop-commander.
Report structure (see references/report_template.md for full template):
=============================================================================
[ECOSYSTEM] ECOSYSTEM ANALYSIS REPORT
=============================================================================
Generated: [Date]
Analysis: [List of libraries]
Data Sources: GitHub API, Web Research
=============================================================================
## 1. Executive Summary
- Key findings (3-5 bullet points)
- Top recommendations
- Critical trends
## 2. GitHub Metrics Analysis
- Comprehensive ranking table
- Detailed statistics per library
- Growth rate comparison
## 3. Detailed Library Profiles
For each library:
- Description and use cases
- Latest version and updates
- Strengths and weaknesses
- Community health indicators
## 4. Comparative Analysis
- Side-by-side comparison table
- When to use each option
- Migration considerations
## 5. Top 3 Recommendations
Ranked recommendations with:
- Selection rationale
- Core value proposition
- Ideal use cases
- Code examples (if applicable)
## 6. Trend Predictions
- Growth trajectory analysis
- Future scenarios (with probability estimates)
- Monitoring indicators
## 7. Actionable Recommendations
- Decision framework by project type
- Migration strategies
- Team education priorities
- Implementation checklists
## 8. Learning Resources
- Official documentation links
- Community resources
- Tutorial recommendations
## 9. Data Sources & Methodology
- GitHub repositories
- Web sources cited
- Scoring methodology explained
Writing guidelines:
- Use visual elements: tables, ASCII art headers, emoji for emphasis
- Include specific numbers: stars, dates, versions
- Provide actionable insights, not just data
- Compare and contrast (don't just list)
- Add code examples for technical concepts
- Use tables for structured comparisons
- Bold key findings and recommendations
- Structure with clear hierarchy (===, ---, ā¢)
File outputs:
{output_directory}/[ecosystem]_analysis.md- Full report{output_directory}/[ecosystem]_data.json- Raw data (already created in Step 4){output_directory}/collect_github_data.py- Collection script (already created in Step 3)
Step 6: Deliver Summary and Next Steps
After completing analysis, provide the user with:
- File confirmation: List all generated files with sizes
- Key findings summary: Top 3-5 insights
- Visual ranking: Quick table/chart of results
- Recommended action: Immediate next step for decision-making
Example summary:
ā
Analysis Complete! Generated 3 files in results/20250114/:
1. react_ecosystem_analysis.md (28 KB, 715 lines)
- Comprehensive analysis of 5 libraries
- Trend predictions through 2026
- Project-specific recommendations
2. react_data.json (4 KB)
- Raw GitHub metrics for all libraries
3. collect_github_data.py (3 KB)
- Reusable data collection script
š Top 3 Recommendations:
1. TanStack Query (47K stars, High Growth) - Server state standard
2. Zustand (56K stars, High Growth) - Simplest client state
3. Redux Toolkit (61K stars, Medium Growth) - Enterprise choice
š Key Finding: "Zustand projected to overtake Redux by mid-2026"
š” Recommended Next Step: [Specific action based on user's context]
Quality Standards
Ensure analysis meets these criteria:
Comprehensiveness
- ā Minimum 3 libraries analyzed
- ā Both GitHub metrics AND web research insights
- ā Quantitative (scores, stars) AND qualitative (use cases, trends)
- ā Historical context and future predictions
Data Quality
- ā Recent data (collected within analysis session)
- ā Consistent methodology across all libraries
- ā Transparent scoring algorithms
- ā Raw data preserved in JSON
Actionability
- ā Clear recommendations (ranked top 3)
- ā Decision frameworks by project type
- ā Specific migration strategies
- ā Immediate action items
Readability
- ā Visual structure (tables, headers, emoji)
- ā Scannable format (bullets, bold, sections)
- ā Progressive disclosure (summary ā details)
- ā Examples and code snippets
Advanced Techniques
Handling Large Ecosystems (10+ libraries)
For ecosystems with many options:
- Phase 1: Analyze top 5-7 by popularity
- Phase 2: Deep-dive into top 3 based on Phase 1
- Optional Phase 3: Niche/emerging options
Custom Scoring Algorithms
Adjust weights based on ecosystem characteristics:
- Mature ecosystems (e.g., React): Weight recent activity higher
- Emerging ecosystems (e.g., Deno): Weight growth rate higher
- Enterprise contexts: Weight fork count and open issues higher
Multi-Dimensional Analysis
Beyond GitHub metrics, consider:
- Bundle size: For frontend libraries
- Performance benchmarks: For frameworks
- TypeScript support: For modern projects
- Framework integrations: For specific contexts
- Learning curve: For team adoption
Include these in report if relevant to user's context.
Trend Prediction Methodology
Base predictions on:
- Growth rates: Extrapolate current trajectories
- Community signals: Reddit/Twitter/HN mentions
- Corporate backing: Company sponsorships
- Ecosystem momentum: Integration with popular tools
- Developer sentiment: Issue discussions, migrations
Assign probability estimates to scenarios:
- 90%+ = Highly confident
- 70-90% = Likely
- 50-70% = Moderate confidence
- <50% = Speculative
Common Pitfalls to Avoid
ā Analyzing outdated data: Always collect fresh GitHub stats ā Ignoring context: Same library isn't best for all projects ā Pure metrics bias: High stars ā best choice for every case ā Missing the "why": Explain rationale, don't just rank ā Incomplete web research: Multiple search angles required ā Generic recommendations: Tailor to project size/type ā No actionable steps: Analysis must guide decisions
Example Usage Patterns
Pattern 1: New Project Technology Selection
User: "We're starting a new React project. Help us choose state management."
ā Analyze: Redux, Zustand, Jotai, TanStack Query, Recoil
ā Emphasize: Learning curve, bundle size, team onboarding
ā Recommendation: Project size-based decision framework
Pattern 2: Migration Evaluation
User: "Should we migrate from Redux to Zustand?"
ā Analyze: Redux, Redux Toolkit, Zustand (focused comparison)
ā Emphasize: Migration effort, breaking changes, ROI
ā Recommendation: Go/no-go decision with migration strategy
Pattern 3: Ecosystem Monitoring
User: "What are the latest Python ML library trends?"
ā Analyze: TensorFlow, PyTorch, JAX, scikit-learn, etc.
ā Emphasize: Recent updates, community shifts, future direction
ā Recommendation: When to adopt new tools vs. stay current
Pattern 4: Competitive Analysis
User: "Compare GraphQL clients for React"
ā Analyze: Apollo, urql, Relay, graphql-request, etc.
ā Emphasize: Feature comparison, performance, bundle size
ā Recommendation: Use-case specific (simple vs. complex apps)
Integration with Other Skills
This skill complements:
- web-research-documenter: Use for single-library deep dives
- skill-creator: Create ecosystem-specific skills based on findings
- Can feed into architecture decision records (ADRs)
- Can inform technical roadmap planning
Maintenance Notes
Keep scoring algorithms updated:
- Adjust max_stars/max_forks based on ecosystem growth
- Update growth rate thresholds as ecosystems mature
- Refine weights based on what correlates with actual adoption
Monitor for GitHub API changes:
- Rate limiting adjustments
- New metrics availability
- Authentication requirements
Related Skills
Xlsx
Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas
Clickhouse Io
ClickHouse database patterns, query optimization, analytics, and data engineering best practices for high-performance analytical workloads.
Clickhouse Io
ClickHouse database patterns, query optimization, analytics, and data engineering best practices for high-performance analytical workloads.
Analyzing Financial Statements
This skill calculates key financial ratios and metrics from financial statement data for investment analysis
Data Storytelling
Transform data into compelling narratives using visualization, context, and persuasive structure. Use when presenting analytics to stakeholders, creating data reports, or building executive presentations.
Kpi Dashboard Design
Design effective KPI dashboards with metrics selection, visualization best practices, and real-time monitoring patterns. Use when building business dashboards, selecting metrics, or designing data visualization layouts.
Dbt Transformation Patterns
Master dbt (data build tool) for analytics engineering with model organization, testing, documentation, and incremental strategies. Use when building data transformations, creating data models, or implementing analytics engineering best practices.
Sql Optimization Patterns
Master SQL query optimization, indexing strategies, and EXPLAIN analysis to dramatically improve database performance and eliminate slow queries. Use when debugging slow queries, designing database schemas, or optimizing application performance.
Anndata
This skill should be used when working with annotated data matrices in Python, particularly for single-cell genomics analysis, managing experimental measurements with metadata, or handling large-scale biological datasets. Use when tasks involve AnnData objects, h5ad files, single-cell RNA-seq data, or integration with scanpy/scverse tools.
Xlsx
Spreadsheet toolkit (.xlsx/.csv). Create/edit with formulas/formatting, analyze data, visualization, recalculate formulas, for spreadsheet processing and analysis.
