Programmer Mate
A comprehensive VS Code extension for managing TODO lists and code snippets in your workspace, developed by New Wiz Tech (NWT).
🌟 Overview
Programmer Mate is your ultimate coding companion that helps you:
- 📋 Manage TODOs with advanced tracking and status management
- 📝 Copy & Paste Code Snippets with smart organization
- 🎯 Navigate Code Efficiently with integrated sidebar and panels
- 📊 Track Development Progress with comprehensive reporting
✨ Features
🔍 TODO Management System
Search & Discovery
- Search for TODO comments across your entire workspace
- Supports multiple comment styles (
//TODO
, /* TODO */
, # TODO
, etc.)
- Quick navigation to found TODO comments
- Works with various file types (JS, TS, Python, Java, C++, HTML, CSS, and more)
Custom TODO Creation
- Add custom TODO items using right-click context menu
- Select code and add TODO items with full context
- Comprehensive information storage:
- 📅 Date and time of creation
- 📁 File name and line number
- 💻 Selected code snippets
- 💬 Custom comments and descriptions
- 🎯 Status tracking (Todo/Completed/Archived)
- 🔄 Last updated timestamps
- Comment out selected code and add TODO tracking simultaneously
- Automatically applies appropriate comment syntax for different languages
- Adds TODO comments with timestamp and user information
- Supports multiple programming languages with intelligent syntax detection
- Tracks commented code in TODO list for easy management and restoration
Advanced Status Management
- Todo: Active items requiring attention
- Completed: Finished items with completion tracking
- Archived: Historical items for record keeping
- Mark as Completed: Right-click context menu for quick status changes
- Completed & Archive: Mark complete and remove TODO comment from source code
Smart Navigation & Integration
- Dedicated sidebar icon in VS Code Activity Bar
- Tree view with hierarchical organization by status
- Color-coded status indicators and item counts
- Click-to-navigate from sidebar to source code
- Real-time synchronization between all views
📋 Copy/Paste System
Smart Code Snippet Management
- Copy selected code with descriptive comments
- Persistent storage in workspace
.programmerMate/copied.json
- Comprehensive metadata tracking:
- 🆔 Unique identifiers for each snippet
- 📅 Creation date and time
- 💬 User-provided descriptions
- 💻 Full code content
- ✅ Paste status tracking
- 📍 Paste location and timestamp history
Intelligent Paste System
- Quick-pick menu showing all available copied items
- Search and filter copied snippets by description
- Visual preview of code content
- Automatic paste status updates
- Prevent duplicate pasting with status indicators
Management Interface
- Dedicated Copy/Paste management webview
- Visual status badges (Available/Pasted)
- Individual delete functionality
- Bulk "Clear All" operations
- Complete paste history with audit trail
🎯 User Interface
Right-click in editor →
└── Programmer Mate
├── ToDo
│ ├── Todo (Add new TODO)
│ ├── Todo & Comment (Comment code + TODO)
│ ├── Mark as Completed (Quick completion)
│ ├── Completed & Archive (Complete + clean code)
│ └── Show Todo List (Open management panel)
└── Copy/Paste
├── Copy (Save code snippet)
├── Show Copy/Paste Page (Management interface)
└── Paste (Quick-pick menu)
- 📋 TODO Icon in VS Code Activity Bar
- 🌳 Tree View with status-based organization
- 📊 Category Counts (Todo (5), Completed (2), Archived (1))
- 🎯 One-Click Navigation to source code locations
🚀 Usage Guide
TODO Management
- Click the TODO icon in the Activity Bar, OR
- Open Command Palette (
Ctrl+Shift+P
)
- Type "Todo List" and select the command
- Browse found TODO comments and click to navigate
Add Custom TODO Items
- Optional: Select code in the editor for context
- Right-click → "Programmer Mate" → "ToDo" → "Todo"
- Enter a descriptive comment for your TODO item
- File is automatically saved with TODO comment added
- Select code you want to comment out
- Right-click → "Programmer Mate" → "ToDo" → "Todo & Comment"
- Enter a TODO comment explaining the purpose
- Code is commented out and TODO item is created automatically
Status Management
- Navigate to a TODO line in your code
- Right-click → "Programmer Mate" → "ToDo" → "Mark as Completed"
- For cleanup: Use "Completed & Archive" to remove TODO comments
Copy/Paste System
Copy Code Snippets
- Select code you want to save
- Right-click → "Programmer Mate" → "Copy/Paste" → "Copy"
- Enter a descriptive comment for the snippet
- Code is saved to
.programmerMate/copied.json
Paste Code Snippets
- Position cursor where you want to paste
- Right-click → "Programmer Mate" → "Copy/Paste" → "Paste"
- Select from quick-pick menu with descriptions and previews
- Code is inserted and paste status is tracked
Manage Snippets
- Right-click → "Programmer Mate" → "Copy/Paste" → "Show Copy/Paste Page"
- View all snippets with status indicators
- Delete individual items or use "Clear All"
- Track paste history with complete audit trail
📝 Available Commands
TODO Commands
Programmer Mate: Todo List
- Search for TODO comments in workspace
Programmer Mate: Add to Todo List
- Add custom TODO item
Programmer Mate: Todo & Comment
- Comment out code and add TODO
Programmer Mate: Mark as Completed
- Mark TODO as completed
Programmer Mate: Completed & Archive
- Complete and clean code
Programmer Mate: Show Todo List
- Open TODO management panel
Copy/Paste Commands
Programmer Mate: Copy
- Save selected code snippet
Programmer Mate: Paste
- Quick-pick paste menu
Programmer Mate: Show Copy/Paste Page
- Open snippet manager
💾 Data Storage
Local Workspace Storage
- TODOs:
.programmerMate/todos.json
- Code Snippets:
.programmerMate/copied.json
Benefits
- ✅ Each workspace has separate data
- ✅ Data stays with your project
- ✅ Version control friendly
- ✅ Backup and sharing enabled
- ✅ No cross-workspace pollution
- ✅ Offline functionality
⚙️ Requirements
- VS Code: 1.74.0 or higher
- Workspace: Required for data storage
- Permissions: File system access for local storage
📦 Installation
From VS Code Marketplace
- Open VS Code Extensions panel (
Ctrl+Shift+X
)
- Search for "Programmer Mate"
- Click "Install"
- Reload VS Code if necessary
Manual Installation
- Download
.vsix
file
- VS Code → Extensions → "..." → "Install from VSIX"
- Select the downloaded file
🛠️ Development
Technology Stack
- Language: TypeScript
- Framework: VS Code Extension API
- Storage: JSON file system
- UI: HTML/CSS with VS Code theming
- Architecture: Provider pattern with separation of concerns
Building from Source
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Watch mode for development
npm run watch
# Package extension
vsce package
Testing
Press F5
to open Extension Development Host window for testing.
🤝 Contributing
We welcome contributions! Please:
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature
)
- Follow TypeScript best practices
- Add appropriate tests
- Update documentation
- Submit pull request
Issue Reporting
- Use GitHub Issues for bug reports
- Provide detailed reproduction steps
- Include VS Code version and extension version
📄 License
© 2025 New Wiz Tech (NWT). All rights reserved.
🚀 Version History
- v1.9.0: Unified menu structure
- v1.8.x: Copy/Paste system implementation
- v1.7.x: Sidebar integration with tree view
- v1.6.x: Enhanced TODO lifecycle management
- v1.5.x: TODO ID tracking in source code
- v1.0.x: Core TODO management features
Enhance your coding workflow with Programmer Mate! 🚀✨
Your ultimate companion for organized, efficient, and productive coding.
Features
🔍 TODO Search
- Search for TODO comments across your entire workspace
- Supports multiple comment styles (//TODO, /* TODO, # TODO, etc.)
- Quick navigation to found TODO comments
- Works with various file types (JS, TS, Python, Java, C++, and more)
➕ Custom Todo Management
- Add custom TODO items using right-click context menu
- Select code and add TODO items with context
- Store comprehensive information:
- Date and time of creation
- File name and line number
- Selected code (if any)
- Custom comments
- Status tracking (Todo/Completed)
- NEW: Comment out selected code and add TODO tracking
- Automatically comments selected lines using appropriate syntax
- Adds TODO comment with timestamp and user information
- Supports multiple languages (JavaScript, Python, HTML, CSS, etc.)
- Tracks commented code in TODO list for easy management
�📋 Todo List Panel
- Dedicated panel for viewing all TODO items
- Toggle status between Todo and Completed
- Edit or delete TODO items
- Navigate directly to TODO locations in code
- Visual statistics and organization
Usage
- Open Command Palette (
Ctrl+Shift+P
)
- Type "Todo List" and select the command
- Browse found TODO comments and click to navigate
Add Custom TODO Items
- Select code in the editor (optional)
- Right-click to open context menu
- Navigate to "Sajjucode" > "Todo"
- Enter a comment for your TODO item
- Select code you want to comment out
- Right-click to open context menu
- Navigate to "Sajjucode" > "Todo & Comment"
- Enter a TODO comment explaining why the code is commented
- The selected code will be commented out and a TODO item will be created
Mark TODO as Completed (NEW!)
- Navigate to a line with an existing TODO
- Right-click to open context menu
- Navigate to "Sajjucode" > "Mark as Completed"
- The nearby TODO will be automatically marked as completed
Manage TODO List
- Open Command Palette (
Ctrl+Shift+P
)
- Type "Show Todo List" and select the command
- Use the enhanced panel to manage your TODO items:
- Filter by Status: Use dropdown to show All, Todo, Completed, or Archived items
- Archive Completed: Bulk archive all completed TODOs
- Status Management: Toggle between Todo ↔ Completed ↔ Archived
Commands
Programmer Mate: Todo List
- Search for TODO comments in workspace
Programmer Mate: Add to Todo List
- Add custom TODO item
Programmer Mate: Todo & Comment
- Comment out selected code and add TODO tracking
Programmer Mate: Mark as Completed
- Mark TODO at current line as completed
Programmer Mate: Show Todo List
- Open TODO management panel
Requirements
- VS Code 1.74.0 or higher
- A workspace folder (required for TODO storage)
Data Storage
TODO items are saved locally in your workspace in a .programmerMate/todos.json
file. This means:
- Each workspace has its own separate TODO list
- TODO data stays with your project
- You can backup, version control, or share TODOs with your team
- No cross-workspace pollution of TODO items
Installation
- Download the extension from VS Code Marketplace
- Install through VS Code Extensions panel
- Reload VS Code if necessary
Development
This extension is built with TypeScript and uses the VS Code Extension API.
Building from Source
npm install
npm run compile
Testing
Press F5
to open a new Extension Development Host window for testing.
Contributing
Issues and pull requests are welcome! Please ensure code follows TypeScript best practices.
License
© 2025 New Wiz Tech (NWT). All rights reserved.
Enjoy coding with Programmer Mate! 🚀