-
Notifications
You must be signed in to change notification settings - Fork 0
Description
🚀 Feature Description
Implement a fuzzy search functionality within the Taskporter “run” interactive screen to allow users to quickly locate tasks by typing partial task names or keywords, rather than requiring exact matches.
💡 Motivation
Currently, users must remember and input exact task names to find and run tasks, which can be time-consuming and prone to error—especially in large projects. This feature would significantly improve usability and efficiency by enabling more intuitive and forgiving searching.
📝 Proposed Solution
Integrate a fuzzy search algorithm (such as FZF or similar) into the “run” interactive screen. When users type in the input field, the list of tasks should dynamically filter and rank results based on closeness to the query, supporting partial matches and typo tolerance.
🌐 Alternative Solutions
• Maintain strict exact-match search (current state).
• Use simple substring search without advanced fuzzy logic (less effective for typos).
• Implement a filter option to group tasks but not enable keyword searching.
🛠️ Implementation Ideas
• Use an open-source fuzzy search library compatible with the project’s tech stack for optimal performance.
• Consider debounce mechanisms for input.
• Allow keyboard navigation in results.
• Provide visual highlights for matched substrings in the UI.
📄 Use Cases
1. Searching for partially remembered task names:
A user remembers only part of a task’s name, types “del env,” and instantly sees and can run “delete-environment”.
2. Recovering from typos:
A user enters a misspelled task (“builld”), yet still sees “build” in the result list and can select it.