Description
Currently, when multiple users request analytics for the same GitHub profile simultaneously, the application may trigger repeated identical GitHub API requests.
This can lead to:
unnecessary API usage
slower response times
duplicate network calls
faster GitHub API rate-limit exhaustion
Since contribution data for a profile does not change frequently, repeated simultaneous requests should ideally share the same in-progress response instead of creating multiple API calls.
Steps to Reproduce
Start the application locally
Open multiple tabs/windows
Request analytics for the same GitHub profile simultaneously
Observe duplicate API requests being triggered for identical profile data
Expected Behavior
The application should:
detect duplicate in-progress requests
reuse existing fetch promises/responses
avoid redundant GitHub API calls
improve performance and scalability
Screenshots / Logs
Possible Solution
Implement:
request deduplication middleware
shared promise handling
temporary in-memory caching
stale-while-revalidate strategy
Example:
If 20 users request the same profile simultaneously, only one API request should execute while the remaining requests wait for the same response.
Benefits
Reduced GitHub API usage
Better scalability
Faster response times
Improved production stability
Lower chance of rate-limit exhaustion
Additional Notes
This enhancement can be implemented incrementally and would be a great optimization for improving backend efficiency and user experience.
I’d love to work on this enhancement if maintainers approve.
GitHub Username (If applicable)
AadityaUniyal
Environment
Chrome
I would to contribute it under GSSoC program
Description
Currently, when multiple users request analytics for the same GitHub profile simultaneously, the application may trigger repeated identical GitHub API requests.
This can lead to:
unnecessary API usage
slower response times
duplicate network calls
faster GitHub API rate-limit exhaustion
Since contribution data for a profile does not change frequently, repeated simultaneous requests should ideally share the same in-progress response instead of creating multiple API calls.
Steps to Reproduce
Start the application locally
Open multiple tabs/windows
Request analytics for the same GitHub profile simultaneously
Observe duplicate API requests being triggered for identical profile data
Expected Behavior
The application should:
detect duplicate in-progress requests
reuse existing fetch promises/responses
avoid redundant GitHub API calls
improve performance and scalability
Screenshots / Logs
Possible Solution
Implement:
request deduplication middleware
shared promise handling
temporary in-memory caching
stale-while-revalidate strategy
Example:
If 20 users request the same profile simultaneously, only one API request should execute while the remaining requests wait for the same response.
Benefits
Reduced GitHub API usage
Better scalability
Faster response times
Improved production stability
Lower chance of rate-limit exhaustion
Additional Notes
This enhancement can be implemented incrementally and would be a great optimization for improving backend efficiency and user experience.
I’d love to work on this enhancement if maintainers approve.
GitHub Username (If applicable)
AadityaUniyal
Environment
Chrome
I would to contribute it under GSSoC program