Generate beautiful, interactive dependency graphs for your CocoaPods projects. Transform your Podfile.lock
into stunning visualizations that help you understand complex pod relationships.
- π¨ Interactive Dependency Wheel: Beautiful D3.js visualization with hover effects and smooth animations
- π Smart Search: Find and highlight specific packages instantly with auto-complete dropdown
- π Detailed Statistics: Real-time stats showing total packages, direct dependencies, and relationships
- π± Responsive Design: Works perfectly on desktop and mobile devices
- π― Modern UI/UX: Clean, professional interface with gradient backgrounds and smooth transitions
- β‘ Fast Performance: Optimized for projects with hundreds of dependencies
- π Self-contained: Generated HTML files work offline with no external dependencies
gem install cocoapods-graph
git clone https://github.com/erickjung/cocoapods-graph.git
cd cocoapods-graph
bundle install
gem build cocoapods-graph.gemspec
gem install cocoapods-graph-*.gem
# Generate interactive HTML report
cocoapods-graph -f Podfile.lock --html
# Generate JSON data
cocoapods-graph -f Podfile.lock --json
# Print dependencies to console
cocoapods-graph -f Podfile.lock --show
# Generate both HTML and JSON
cocoapods-graph -f Podfile.lock --html --json
Option | Description |
---|---|
-f, --file FILE |
Specify path to Podfile.lock file |
--html |
Generate interactive HTML dependency wheel |
--json |
Generate JSON data file |
--show |
Print dependencies to console |
-h, --help |
Show help message |
-v, --version |
Show version |
# In your iOS project directory
cocoapods-graph -f Podfile.lock --html
# Creates: Podfile.lock.html
# Specify custom file path
cocoapods-graph -f MyProject/Podfile.lock --html --json
# Creates: MyProject/Podfile.lock.html and MyProject/Podfile.lock.json
# Quick dependency check
cocoapods-graph -f Podfile.lock --show
Example dependency visualization from the WordPress iOS app, showing the interactive dependency wheel with search functionality and statistics dashboard.
π Try the live interactive demo! - Open the full WordPress iOS app dependency visualization
- Hover effects: Move your mouse over any package to see its relationships
- Visual highlighting: Related dependencies are highlighted while others fade
- Color coding: Each package gets a unique color for easy identification
- Smooth animations: Elegant transitions make exploration enjoyable
- Live search: Results appear as you type
- Auto-complete: Dropdown shows matching packages with dependency counts
- One-click selection: Click any result to highlight it on the wheel
- Keyboard navigation: Use Enter/Escape for quick actions
- Total Packages: Count of all pods in your project
- Direct Dependencies: Number of pods your app directly depends on
- Total Dependencies: Sum of all dependency relationships
- Real-time updates: Stats update as you explore the graph
- Self-contained interactive visualization
- Modern, responsive design
- Search and highlight functionality
- Professional statistics dashboard
- Offline-ready (no internet required)
- Structured dependency data
- Perfect for CI/CD integration
- Easy to parse programmatically
- Compatible with other tools
git clone https://github.com/erickjung/cocoapods-graph.git
cd cocoapods-graph
bundle install
bundle exec rake
gem build cocoapods-graph.gemspec
gem install cocoapods-graph-*.gem
cocoapods-graph/
βββ lib/
β βββ cocoapods_graph.rb # Main module
β βββ cocoapods_graph/
β βββ version.rb # Version constant
β βββ pod_class.rb # Pod data structure
β βββ generator.rb # Core parsing logic
β βββ template.html # HTML template
βββ exe/
β βββ cocoapods-graph # Executable binary
βββ cocoapods-graph.gemspec # Gem specification
βββ README.md # This file
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b my-new-feature
- Make your changes and add tests if applicable
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request
If you find this tool helpful, please give it a star on GitHub! β
Found a bug or have a feature request? Open an issue