Skip to content

perf: debounce repo search input in RepoAnalyticsExplorer#1922

Merged
Priyanshu-byte-coder merged 3 commits into
Priyanshu-byte-coder:mainfrom
neha2006-6:main
Jun 4, 2026
Merged

perf: debounce repo search input in RepoAnalyticsExplorer#1922
Priyanshu-byte-coder merged 3 commits into
Priyanshu-byte-coder:mainfrom
neha2006-6:main

Conversation

@neha2006-6
Copy link
Copy Markdown
Contributor

Summary

Added debounce functionality to the repo search
input in RepoAnalyticsExplorer to prevent API
calls on every keystroke.

Closes #1894

Type of Change

  • Performance improvement

Changes Made

  • Added useDebounce custom hook with 300ms delay
  • Added search input field to filter repositories
  • Filtered repos using debouncedQuery instead of raw query
  • No API refetch on every keystroke

How to Test

  1. Go to Repo Analytics Explorer section
  2. Type in the search input
  3. Verify no lag while typing
  4. Verify results filter after 300ms delay

Checklist

  • Linked issue in summary
  • No TypeScript errors
  • Self-reviewed the diff

@vercel
Copy link
Copy Markdown

vercel Bot commented Jun 3, 2026

@neha2006-6 is attempting to deploy a commit to the PRIYANSHU DOSHI's projects Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions github-actions Bot added gssoc26 GSSoC 2026 contribution type:performance GSSoC type bonus: performance (+15 pts) labels Jun 3, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 3, 2026

GSSoC Label Checklist 🏷️

@Priyanshu-byte-coder — please apply the appropriate labels before merging:

Difficulty (pick one):

  • level:beginner — 20 pts
  • level:intermediate — 35 pts
  • level:advanced — 55 pts
  • level:critical — 80 pts

Quality (optional):

  • quality:clean — ×1.2 multiplier
  • quality:exceptional — ×1.5 multiplier

Validation (required to score):

  • gssoc:approved — counts for points
  • gssoc:invalid / gssoc:spam / gssoc:ai-slop — does not score

Type labels (type:*) are auto-detected from files and title. Review and adjust if needed.
Points formula: (difficulty × quality_multiplier) + type_bonus

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

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

Thanks for your first PR on DevTrack! 🎉

A maintainer will review it within 48 hours. While you wait:

  • Make sure CI is passing (type-check + lint)
  • Double-check the PR description is filled out and the issue is linked
  • Feel free to ask questions in Discussions if you need help

If you find DevTrack useful, a ⭐ star on the repo is always appreciated — it helps the project grow and attract more contributors!

@Priyanshu-byte-coder Priyanshu-byte-coder added gssoc:approved GSSoC: PR approved for scoring level:beginner GSSoC: Beginner difficulty (20 pts) labels Jun 3, 2026
@Priyanshu-byte-coder
Copy link
Copy Markdown
Owner

CI is failing because of a broken change in src/components/GoalTracker.tsx. The code uses undefined variables actual and target instead of goal.current and goal.target:

// Current (broken) — actual and target are not defined here
const pct = actual > 0 ? Math.max(1, Math.round((actual / target) * 100)) : 0;

// Should be:
const pct = goal.current > 0 ? Math.max(1, Math.round((goal.current / goal.target) * 100)) : 0;

The debounce implementation in RepoAnalyticsExplorer.tsx looks correct. Please fix the GoalTracker change and push.

@neha2006-6
Copy link
Copy Markdown
Contributor Author

I've pushed the GoalTracker fix requested in the review (goal.current / goal.target).
Could you please re-run or approve the pending workflows when you have a chance? Thank you!

@Priyanshu-byte-coder Priyanshu-byte-coder added quality:clean GSSoC: Clean quality multiplier (×1.2) level:intermediate GSSoC: Intermediate difficulty (35 pts) labels Jun 4, 2026
@Priyanshu-byte-coder Priyanshu-byte-coder merged commit 6f1b831 into Priyanshu-byte-coder:main Jun 4, 2026
9 of 10 checks passed
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 4, 2026

🎉 Merged! Thanks for contributing to DevTrack.

If the project has been useful to you, a ⭐ star on the repo is the easiest way to support it — it helps DevTrack get discovered by more developers.

Keep an eye on open issues for your next contribution!

@Priyanshu-byte-coder Priyanshu-byte-coder removed the level:beginner GSSoC: Beginner difficulty (20 pts) label Jun 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc:approved GSSoC: PR approved for scoring gssoc26 GSSoC 2026 contribution level:intermediate GSSoC: Intermediate difficulty (35 pts) quality:clean GSSoC: Clean quality multiplier (×1.2) type:performance GSSoC type bonus: performance (+15 pts)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[PERF] Debounce search/filter input in RepoAnalyticsExplorer

2 participants