VS Code Port Monitor Configuration
Configure the VS Code Port Monitor extension to monitor development server ports in real-time with visual status indicators in your status bar.
Extension: dkurokawa.vscode-port-monitor
Core Concepts
Port Monitor Features
- 🔍 Real-time monitoring - Live status bar display
- 🏷️ Intelligent configuration - Supports arrays, ranges, well-known ports
- 🛑 Process management - Kill processes using ports
- 🎨 Customizable display - Icons, colors, positioning
- 📊 Multiple groups - Organize ports by service/project
Status Icons
- 🟢 = Port is in use (service running)
- ⚪️ = Port is free (service stopped)
Configuration Workflow
Step 1: Create Configuration File
Add configuration to .vscode/settings.json:
{
"portMonitor.hosts": {
"GroupName": {
"port": "label",
"__CONFIG": { ... }
}
}
}
Step 2: Choose a Template
Select from common scenarios (see examples/ directory):
| Scenario | Template File | Ports |
|----------|--------------|-------|
| Vite basic | vite-basic.json | 5173 (dev) |
| Vite with preview | vite-with-preview.json | 5173 (dev), 4173 (preview) |
| Full stack | fullstack.json | 5173, 4173, 3200 |
| Next.js | nextjs.json | 3000 (app), 3001 (api) |
| Microservices | microservices.json | Multiple groups |
Step 3: Apply Configuration
- Copy template content to
.vscode/settings.json - Customize port numbers and labels for your project
- Save file - Port Monitor will auto-reload
Quick Start Examples
Example 1: Vite Project
{
"portMonitor.hosts": {
"Development": {
"5173": "dev",
"__CONFIG": {
"compact": true,
"bgcolor": "blue",
"show_title": true
}
}
},
"portMonitor.statusIcons": {
"inUse": "🟢 ",
"free": "⚪️ "
}
}
Display: Development: [🟢 dev:5173]
Example 2: Microservices
{
"portMonitor.hosts": {
"Frontend": {
"3000": "react",
"__CONFIG": { "compact": true, "bgcolor": "blue", "show_title": true }
},
"Backend": {
"3001": "api",
"5432": "postgres",
"__CONFIG": { "compact": true, "bgcolor": "yellow", "show_title": true }
}
}
}
Display: Frontend: [🟢 react:3000] Backend: [🟢 api:3001 | 🟢 postgres:5432]
Best Practices
✅ Do
- Use descriptive labels:
"5173": "dev"not"5173": "5173" - Add space after emojis:
"🟢 "for better readability - Group related ports: Frontend, Backend, Database
- Use compact mode for cleaner status bar
- Set reasonable refresh interval (3000-5000ms)
❌ Don't
- Reverse port-label format:
"dev": 5173❌ - Use empty group names
- Set refresh interval too low (<1000ms)
- Monitor too many ports (>10 per group)
Common Issues
Port Monitor Not Showing
- Check extension is installed:
code --list-extensions | grep port-monitor - Verify
.vscode/settings.jsonsyntax - Reload VS Code:
Cmd+Shift+P→ "Reload Window"
Configuration Errors
Check port-label format is correct:
// ✅ Correct
{"5173": "dev"}
// ❌ Wrong
{"dev": 5173}
For more troubleshooting, see references/troubleshooting.md
Reference Materials
- Configuration Options:
references/configuration-options.md- Detailed option reference - Troubleshooting:
references/troubleshooting.md- Common issues and solutions - Integrations:
references/integrations.md- Tool-specific configurations - Advanced Config:
references/advanced-config.md- Pattern matching, custom emojis - Examples:
examples/- Ready-to-use JSON configurations
Workflow Summary
- Choose template from examples/ directory based on your stack
- Copy to
.vscode/settings.json - Customize port numbers and labels
- Save and verify status bar display
- Troubleshoot if needed using references/troubleshooting.md
Port Monitor will automatically detect running services and update the status bar in real-time.
微信扫一扫