File Groups
Organize your workspace files into custom groups with visual icons, descriptions, and TODO tracking. Keep your project structure clear and accessible, no matter how complex your codebase gets.
Features
📁 Custom File Groups
- Create unlimited groups to organize files by feature, module, or any custom category
- Choose from 14 icons (folder, package, tools, bug, star, rocket, book, gear, beaker, etc.)
- Add descriptions to document the purpose of each group
- Drag & drop files from Explorer directly into groups
🔄 Flexible Organization
- Reorder groups by dragging them or using Move Up/Down commands
- Reorder files within groups with drag & drop or keyboard commands
- Quick access: Open all files in a group with one click
- Delete key support: Press Delete to remove a file from a group
✅ Integrated TODO Tracking
- Automatic scanning of TODO, FIXME, BUG, HACK, REVIEW, NOTE, XXX, and WARN comments
- Real-time badges showing TODO counts per group and file
- Interactive TODO list: Click "Show All TODOs" to see all tasks in a group
- Jump to line: Click any TODO to navigate directly to its location
💾 Workspace Persistence
- Groups are saved in
.vscode/filegroups.json
in your workspace
- Share with your team by committing the configuration file
- Per-workspace: Each project can have its own file groups
Usage
Creating a Group
- Click the + icon in the File Groups panel
- Enter a group name and optional description
- Choose an icon from the list
- Start adding files!
Adding Files to Groups
Method 1: Context Menu
- Right-click any file in Explorer → "Add to Group"
Method 2: Drag & Drop
- Drag files from Explorer directly onto a group
Managing Groups
Right-click on a group to:
- 📝 Edit description
- 🎨 Change icon
- 📋 Show all TODOs
- ⬆️ Move up
- ⬇️ Move down
- 🗑️ Delete group
- 📂 Open all files
Managing Files
Right-click on a file in a group to:
- 🗑️ Remove from group (or press Delete key)
- ⬆️ Move up
- ⬇️ Move down
Reordering with Drag & Drop
- Drag a group onto another group to reposition it
- Drag a file onto another file (in the same group) to reorder
Commands
All commands are accessible via the Command Palette (Ctrl+Shift+P
/ Cmd+Shift+P
):
File Groups: Create New Group
File Groups: Add to Group
File Groups: Remove from Group
File Groups: Delete Group
File Groups: Change Icon
File Groups: Edit Description
File Groups: Show All TODOs
File Groups: Open All Files in Group
File Groups: Move Group Up/Down
File Groups: Move File Up/Down
File Groups: Refresh Groups
Keyboard Shortcuts
- Delete: Remove selected file from group (when focused on File Groups view)
Requirements
- Visual Studio Code 1.80.0 or higher
Extension Settings
This extension stores its configuration in .vscode/filegroups.json
within your workspace. No global settings are required.
Example Use Cases
🎯 Feature Development
Group all files related to a specific feature:
auth-feature
: Login.tsx, AuthProvider.tsx, auth.service.ts, auth.test.ts
🐛 Bug Tracking
Track files you're debugging:
memory-leak-investigation
: useEffect files, performance-critical components
📚 Documentation
Keep documentation files organized:
docs
: README.md, API.md, CONTRIBUTING.md, CHANGELOG.md
🔧 Refactoring
Group files that need refactoring:
legacy-code-cleanup
: Old components with TODO/FIXME comments
👥 Team Collaboration
Share groups with your team via .vscode/filegroups.json
:
{
"groups": [
{
"id": "1234567890",
"name": "Authentication Feature",
"description": "All files related to JWT authentication",
"icon": "lock",
"files": [
"src/auth/login.tsx",
"src/auth/authProvider.tsx"
]
}
]
}
Known Issues
- File paths are relative to workspace root. Multi-root workspaces use the first workspace folder.
Release Notes
1.0.0
Initial release of File Groups:
- ✨ Create custom file groups with icons and descriptions
- 📂 Add/remove files from groups
- 🔄 Drag & drop support for files and groups
- ⬆️⬇️ Reorder groups and files
- ✅ Automatic TODO/FIXME/BUG scanning
- 📋 Interactive TODO list per group
- ⌨️ Delete key binding for quick file removal
- 💾 Workspace-based persistence
Feedback & Contributions
Found a bug or have a feature request? Feel free to reach out or open an issue.
Enjoy organizing your files! 🎉