A modern Chrome extension for debugging React and Vue applications with beautiful visualizations and performance insights.
- 📊 Visual Component Tree - See your entire component hierarchy at a glance
- 🔍 Smart Search - Quickly find components by name
- ⚛️ React & Vue Support - Toggle between frameworks with one click
- 📈 Performance Monitoring - Track render counts and timing for each component
- 🔎 Deep Inspection - View props, state, and nested data structures
⚠️ Performance Warnings - Get alerts for components with high render counts- 🎨 Modern UI - Sleek dark theme with intuitive navigation
- Visit the Chrome Web Store
- Click "Add to Chrome"
- Open your React or Vue app
- Click the extension icon to start debugging
- Clone this repository:
git clone https://github.com/yourusername/component-debugger.git
cd component-debugger- Install dependencies:
npm install- Build the extension:
npm run build- Load in Chrome:
- Open Chrome and navigate to
chrome://extensions/ - Enable "Developer mode" in the top right
- Click "Load unpacked"
- Select the
buildfolder from this project
- Open Chrome and navigate to
- Open the Extension - Click the Component Debugger icon in your Chrome toolbar
- Select Framework - Choose between React or Vue mode
- Scan Components - Click the "Scan" button to detect components
- Explore - Click on any component in the tree to view its details
The left panel shows your application's component hierarchy:
- Expand/Collapse - Click the arrows to navigate nested components
- Select Component - Click any component name to view details
- Search - Use the search bar to filter components by name
The right panel displays detailed information:
- Props - All properties passed to the component
- State - Current state values (React) or data (Vue)
- Performance - Render count and timing information
- Warnings - Alerts for potential performance issues
Component Debugger helps you identify performance bottlenecks:
- ✅ Green indicator - Component performance is good
⚠️ Yellow warning - High render count detected (> 5 renders)- Render Time - How long each component takes to render
- Render Count - Number of times a component has re-rendered
Browse your entire component hierarchy with expandable nodes
Deep dive into component data with syntax-highlighted values
Track render counts and identify performance issues
- Node.js 14+
- npm or yarn
- Chrome browser
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
# Run tests
npm testcomponent-debugger/
├── src/
│ ├── components/ # React components
│ ├── utils/ # Helper functions
│ ├── manifest.json # Chrome extension manifest
│ └── index.js # Entry point
├── public/ # Static assets
├── build/ # Production build
└── README.md
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow the existing code style
- Write clear commit messages
- Add tests for new features
- Update documentation as needed
- Currently supports client-side rendered apps only
- SSR applications require additional configuration
- Some component names may not display correctly with minified code
- Support for Next.js and Nuxt.js
- Time-travel debugging
- State change history
- Export component data to JSON
- Performance profiling charts
- Custom theme support
- Firefox extension support
This project is licensed under the MIT License - see the LICENSE file for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Twitter: @SYOP200
- React DevTools for inspiration
- Vue DevTools for architecture ideas
- The open-source community for continuous support
Made with ❤️ by SYOP200
Star this repo if you find it helpful! ⭐