Skip to content

[FEATURE] Tags and categories for notes #11

@jnahian

Description

@jnahian

Feature Description

Add support for tagging and categorizing notes to help organize and group related notes across the codebase.

Problem/Motivation

Notes are currently only organized by their file location and line number. Users need a way to group related notes across different files, mark notes by type (e.g., TODO, FIXME, QUESTION), or categorize notes by feature area.

Proposed Solution

Implement a tagging system that allows users to:

  • Add one or more tags to each note
  • Use predefined categories (TODO, FIXME, QUESTION, NOTE, etc.)
  • Create custom tags
  • Filter notes by tag in the sidebar view
  • Display tags in CodeLens indicators
  • Quick tag selection UI when creating/editing notes

Alternative Solutions

  • Use a category dropdown instead of free-form tags
  • Support both tags and categories (tags are free-form, categories are predefined)
  • Use markdown frontmatter in note files to store tags

Use Cases

  • Mark notes as TODO items that need action
  • Tag notes by feature area (e.g., #authentication, #api, #ui)
  • Categorize notes by type (question, bug, improvement)
  • Filter sidebar view to show only notes with specific tags
  • Generate reports of all TODO or FIXME notes

Examples

Similar to:

  • GitHub issue labels
  • TODO Tree extension's tag detection
  • Comment tags in other IDEs (IntelliJ, etc.)

Example UI:

[TODO] [#authentication] Need to add rate limiting

Additional Context

This is a planned feature from the CHANGELOG.md [Unreleased] section. Would integrate well with the sidebar view and search/filter features.

Implementation Considerations

  • Store tags in note metadata (markdown frontmatter)
  • Add tag input field to comment editor UI
  • Update CodeLens to show tags
  • Add tag filtering to sidebar view
  • Consider tag autocomplete for existing tags
  • Support tag colors/icons for visual distinction

Willing to Contribute?

  • Yes, I'd like to implement this
  • I can help with testing
  • I'd like to help with documentation
  • No, just suggesting the idea

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions