To use it, enter a Github username or a repo link and click “Go”:
Limitations
- only the last 6 months of activity are considered
- false positives may appear as authors of merged PR are added to the list
Source code
<input id="username" type="text" placeholder="Github username or repo link" />
<button onclick="fetch(`https://api.github.com/users/${username.value.replace(/^.*com[/]([^/]*).*$/,'$1')}/events/public`).then(e=> e.json()).then(e => [...new Set([].concat.apply([],e.filter(x => x.type==='PushEvent').map(x => x.payload.commits.map(c => c.author.email)))).values()]).then(x => results.innerText = x)">GO</button>
<div id="results"></div>
References
- the code snippet was shared by Qbolec on Stackoverflow
- another solution based on .patch
- a npm package providing the same solution