AOSSIE-Org / AOSSIE-Org/OrgExplorer

[FEATURE] : Implement Debounced GitHub Organization Autocomplete with Keyboard Navigation

Đang mở
#141 3 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement
Ngôn ngữ chính
JavaScript
Star
34
Fork
92
Merge trung bình
8 ngày 7 giờ
Pull request đã merge (30 ngày)
12

Mô tả

## Feature and its Use Cases

Improve the GitHub organization search experience on the Home page by introducing a production-ready autocomplete dropdown.

Currently, users need to type the complete organization name before starting an analysis. This can be slow, error-prone, and inconvenient, especially for organizations with long names.

## Proposed Improvements

- Add a debounced search to reduce unnecessary GitHub API requests while typing.
- Fetch matching GitHub organizations dynamically using the GitHub Search API.
- Display up to 7–8 relevant organization suggestions in a dropdown below the search input.
- Display each suggestion with:
- Organization avatar
- Organization login/name
- Support keyboard navigation:
- Arrow Down → Move to the next suggestion.
- Arrow Up → Move to the previous suggestion.
- Enter → Select the highlighted suggestion.
- Allow users to select an organization using the mouse.
- Highlight the currently selected suggestion during keyboard navigation.
- Show a loading state while fetching suggestions.
- Show an empty state when no matching organizations are found.
- Ignore very short queries (e.g., fewer than 2 characters) to minimize unnecessary API requests.
- Prevent duplicate suggestions from appearing.
- Ensure the autocomplete integrates smoothly with the existing chip-based organization selection workflow.

## Benefits

- Faster organization search.
- Improved user experience.
- Reduced typing effort.
- Fewer spelling mistakes.
- Lower GitHub API usage through debouncing.
- Better accessibility with full keyboard support.
- Production-ready and responsive search experience.

## Expected Outcome

Users should receive relevant GitHub organization suggestions while typing, navigate the dropdown using both keyboard and mouse, and quickly select an organization without entering the full name manually. The implementation should be responsive, accessible, and optimized to minimize unnecessary API requests.

### Additional Context

### Suggested UI Behavior

- Suggestions should appear directly below the organization search input.
- Each suggestion should include the organization's avatar and login name.
- The active suggestion should be visually highlighted.
- The dropdown should close when:
- An organization is selected.
- The user clicks outside the search area.
- The input is cleared.
- The component should work well on both desktop and mobile devices.

### Code of Conduct

- [x] I have joined the [Discord server](https://discord.gg/hjUhu33uAn) and will post updates there
- [x] I have searched existing issues to avoid duplicates

If this feature is approved, I'd love to implement it. Kindly assign it to me if possible.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Start at the Home page organization search input and trace the existing chip-based organization selection workflow and GitHub API integration. Check how the current input handles queries, then map the dropdown, debouncing, keyboard and mouse selection, loading, empty, duplicate, clearing, and outside-click states. Done means relevant suggestions appear accessibly and selection integrates with the existing workflow on desktop and mobile.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
github, javascript
Lĩnh vực
api, frontend
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
55/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.