-
Notifications
You must be signed in to change notification settings - Fork 163
Description
Summary
Enhancement: Add sorting icons & full column sorting support to project table
The project table currently supports filtering and partial sorting, but lacks sorting indicators and complete sorting behavior across all columns. Adding sorting icons and implementing full column sorting will improve usability, accessibility, and overall dashboard experience.
Problem
Users cannot visually understand which column is currently sorted because no sorting indicators (▲ ▼ ↕) are shown.
Some table columns are marked as sortable but do not actually apply sorting logic (e.g., Language, Popularity, Stage, Competition, Activity).
This creates confusion and limits the usefulness of the project listing table, especially when exploring large datasets.
Proposed Solution
-
Add sorting icons (▲ ▼ ↕ or Heroicons chevrons) to sortable table headers
-
Implement complete sorting logic for ALL sortable columns:
- Project (name)
- Issues
- Language
- Popularity
- Stage
- Competition
- Activity
-
Improve accessibility:
role="button"on sortable headerstabIndex={0}- Keyboard sorting (Enter / Space)
aria-sort="ascending|descending|none"
-
Optional UI improvements:
- Highlight active sorted column
- Display hover feedback on sortable headers
- Maintain sort order when filters change
Alternatives Considered
- Leaving sorting icons out and relying purely on column clicks, but this provides no visual feedback and hurts usability.
- Adding sorting only to Issues and Project columns, but users need consistent sorting across all metadata fields.
- Using external table libraries, but this increases dependency weight and is unnecessary since the current solution is close to complete.
Additional Context
The filtering system is robust, but sorting requires UI clarity and full functional coverage.
Adding sorting icons and expanding sorting logic will standardize the table UX, similar to GitHub, GitLab, and other dashboards.
Happy to contribute a PR for this enhancement if approved.