A plugin for Obsidian that helps you track progress of your tasks in real-time. It provides a visual progress bar and integrates with Kanban boards to help you manage your tasks more effectively.
- Sidebar duplication bug fixed: Only one progress tracker view is created, even after reloads.
- Sidebar position: Progress tracker now appears in the right sidebar by default.
- Custom checkbox states: Improved support and protection for custom states in Kanban boards.
- View initialization: Progress bar view now reliably loads and updates when opened.
- Real-time progress tracking of tasks in your notes
- Visual progress bar showing completion percentage
- Automatic status updates based on task completion
- Kanban board integration for task management
- Custom checkbox states for Kanban columns (NEW!)
- Customizable colors and thresholds
- Debug mode for troubleshooting
- Open Obsidian Settings
- Go to Community Plugins and disable Safe Mode
- Click Browse and search for "Progress Tracker"
- Install the plugin
- Enable the plugin in your Community Plugins list
-
Create tasks in your notes using Markdown checkboxes:
- [ ] Task 1 - [x] Completed task - [ ] Task 3
-
The progress bar will automatically update as you check/uncheck tasks.
The plugin can automatically move cards in your Kanban boards based on task completion:
- Set up a Kanban board in Obsidian
- Configure the target Kanban board in plugin settings
- As you complete tasks, cards will move to appropriate columns
You can now configure custom checkbox states for different Kanban columns:
-
Enable "Custom Checkbox States" in plugin settings
-
Configure mappings between column names and checkbox states:
Todo→[ ](unchecked)In Progress→[/](in progress)Complete→[x](completed)Done→[x](completed)- Or any custom states like
[>],[-], etc.
-
When cards are moved between columns, their checkbox states will automatically update
[ ]- Todo/Unchecked[x]- Completed[/]- In Progress[>]- Forwarded/Deferred[-]- Cancelled[!]- Important
The plugin now includes intelligent protection against unwanted checkbox state normalization by the Kanban plugin:
- Real-Time Detection: Instantly detects when the Kanban plugin tries to convert custom states to standard states
- Immediate Reversion: Automatically reverts unwanted normalizations in real-time
- Smart Pattern Analysis: Distinguishes between legitimate user changes and unwanted plugin normalizations
- Selective Protection: Only protects states that match your column mappings while preserving legitimate changes
- Multi-Layer Defense: Combines immediate detection, movement analysis, and content comparison for comprehensive protection
- Non-Invasive: Works seamlessly without interfering with normal Kanban operations
- Debug Support: Comprehensive logging and testing commands for troubleshooting
How it works:
- Immediate Detection: Monitors editor changes in real-time to catch normalization as it happens
- Pattern Recognition: Analyzes content changes to identify unwanted custom state → [x] conversions
- Smart Reversion: Automatically restores correct checkbox states based on column mappings
- Movement Protection: Prevents card movements from triggering unwanted normalization cascades
This ensures your custom checkbox states (like [/], [~], etc.) remain intact when working with Kanban boards, even when the Kanban plugin tries to normalize them.
The plugin now properly recognizes and counts all custom checkbox states with advanced conflict prevention and precision targeting. When custom checkbox states are enabled:
- Progress Calculation: Custom states (like
[/],[-],[~]) are counted as "tasks in progress" and included in the total task count - Smart Auto-Sync: Auto-sync only updates cards that don't already have the correct checkbox state for their column
- Conflict Prevention: Advanced timing detection prevents race conditions between auto-sync and manual card movements
- Precision Targeting: Only cards that actually moved between columns are updated, eliminating false positives
- Content Normalization: Card movements are detected by normalized content comparison, not checkbox states or fuzzy matching
- Preserved States: Cards with existing correct states are left unchanged to prevent unnecessary modifications
- Enhanced Detection: All task-related changes are properly detected regardless of checkbox state
Note: When updating checkbox states, only the main card checkbox is modified. Sub-items and nested checkboxes within cards are preserved to maintain data integrity. The plugin uses sophisticated position-based replacement and precision targeting to ensure only cards that actually moved are updated, completely preventing accidental modifications to other cards.
- Choose between default theme colors or custom color schemes
- Set custom colors for different progress levels
- Configure progress thresholds
- Adjust update delays for different actions
- Configure animation settings
- Set maximum height for the progress bar container
- Automatically update file metadata on task completion
- Configure status labels for different progress states
- Set up finished date tracking
- Enable/disable automatic Kanban board updates
- Configure target Kanban board
- Set up column mapping for task states
- Enable custom checkbox state management
- Configure column-to-checkbox mappings
- Add/remove column mappings as needed
- Reset to default mappings
If you encounter issues:
- Enable Debug Mode in settings to see detailed logs
- Check if Dataview plugin is installed and enabled
- Verify your Kanban board configuration
- Clear the completed files cache if needed
- Check custom checkbox state mappings if using that feature
If you find this plugin helpful, you can:
- Star the repository
- Report issues on GitHub
- Submit feature requests
- Contribute to the code
This project is licensed under the MIT License - see the LICENSE file for details.