Skip to content

feat: display app's shortcuts when searching for an app#58

Open
d-rita wants to merge 5 commits intomainfrom
DHIS2-20121/app-and-shortcuts-search
Open

feat: display app's shortcuts when searching for an app#58
d-rita wants to merge 5 commits intomainfrom
DHIS2-20121/app-and-shortcuts-search

Conversation

@d-rita
Copy link
Contributor

@d-rita d-rita commented Jan 15, 2026

Implements DHIS2-20121

Details:

  • Utilised the appName key contained in every shortcut object to match the entered filter, and hence return all shortcuts belonging to a particular app in the general (Home) view, and the Shortcuts view
  • Added tests

Screenshot:

app-search

@d-rita d-rita requested a review from a team January 15, 2026 18:43
@sonarqubecloud
Copy link

Copy link
Collaborator

@kabaros kabaros left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I noticed that the search got a bit slower in the branch, and tried to diagnose it, it looks like the memory usage (consistently) is higher than the main branch (65-70MB compared to ~45), so is the percentage of amount of time taken to render the component.

But more important than the numbers, it did feel sluggish for me as a user.

I think we should look at optimising this one as much as possible since it's the main interface people use .. right now, there are two nested loop effectively, and maybe they can be combined into one, or maybe using one of the fuzzy search libraries can be more performant than what we have. I would even add a test to time the search performance (for development) and compare it in the main branch and this branch - I am not sure what is the exact solution, but I think it's worth optimising (happy to pair on it).

profiling-performance.webm

Eddy-Nhabinde and others added 3 commits February 24, 2026 12:39
* fix(command-palette): improve multi-word filtering in search

- Add helper functions to split filter into words and check for spaces
- Modify filter logic to match all filter words independently in item names
- Maintain accent and punctuation removal for better search accuracy

* feat(command-palette): replace custom filter with fuse.js for fuzzy search

- Implement Fuse.js for more robust and flexible fuzzy search in command palette
- Remove custom regex-based filtering logic and string processing utilities
- Add fuse.js dependency to package.json and configure proxy for dev server

* fix(command-palette): improve search filtering and remove proxy config

- Increase Fuse.js threshold from 0.3 to 0.5 for more relevant results
- Enable diacritics ignoring and result sorting in search
- Normalize search string before filtering
- Remove development proxy configuration from start script
- use Fuse js implementation for fuzzy search across apps, shortcuts, actions
- remove redundant filter helper functions
- group apps with their shortcuts for easy retrieval
@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 9, 2026

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants