beatty / rustaceanrank Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Each user's entry has a brief summary of the crates they own. Please consider sorting those crates by the contribution of each crate to their rank. That would tend to put crates with a higher ecosystem impact first.
"Ideally contribution level from git would be used. I think this would be 10x the work."
Damn, talk about a perfect hook. You really know how to get an engineer to work on a problem. You should consider starting a tech company, or something ๐
This might not be too difficult. It looks like crates.repository
specifies a full repository URL such as https://github.com/rust-lang/rust. In that example, rust-lang
is the owner
and rust
is the repository
, which should be easily parseable, especially for throwaway code.
From there it would just be a GET https://api.github.com/repos/{owner}/{repository}/contributors
. The easiest way to authenticate would be using Basic Authentication. For GH, just concat your username:password
, base64 encode it, and throw it in an Authorization header. e.g.,
curl --location --request GET 'https://api.github.com/repos/beatty/rustaceanrank/contributors' \
--header 'Authorization: Basic: base64(markrmullan:scrubbed)'
[
{
"login": "beatty",
"id": 101126,
"node_id": "MDQ6VXNlcjEwMTEyNg==",
"avatar_url": "https://avatars.githubusercontent.com/u/101126?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/beatty",
"html_url": "https://github.com/beatty",
"followers_url": "https://api.github.com/users/beatty/followers",
"following_url": "https://api.github.com/users/beatty/following{/other_user}",
"gists_url": "https://api.github.com/users/beatty/gists{/gist_id}",
"starred_url": "https://api.github.com/users/beatty/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/beatty/subscriptions",
"organizations_url": "https://api.github.com/users/beatty/orgs",
"repos_url": "https://api.github.com/users/beatty/repos",
"events_url": "https://api.github.com/users/beatty/events{/privacy}",
"received_events_url": "https://api.github.com/users/beatty/received_events",
"type": "User",
"site_admin": false,
"contributions": 2
}
]
A Github contribution
includes actions like commenting on a PR and not just commits. The response is sorted in descending order by number of contributions for the repository, which feels awfully convenient for this project. Give it a shot with https://api.github.com/repos/rust-lang/rust/contributors
. The bots that massively pad their own commit numbers, such as https://github.com/bors, should be easily identifiable for exclusion. The Gitlab et al. repos would be a different story, SELECT repository FROM crates WHERE repository NOT LIKE 'https://github.com/%' LIMIT 100;
, but it feels like Github alone should expand your awesome-human-candidate-pool by quite a bit, if it's worth investing a little more time.
Avatars and everything? You've really undersold your design skills.
Example I noticed:
See how the x11-dl is rendered as {\times}11-dl. Presumably there is a ligature that notices the previous non-whitespace character is a digit. It reproduces in https://fonts.google.com/specimen/Inter?preview.text=x11%20x11-dl&preview.text_type=custom.
According to https://www.reddit.com/r/rust/comments/mxy47f/rustaceanrank_pagerank_over_the_graph_of_crate/gvujwuk/?context=1, the ordering is determined by:
The crates next to someone's name are in PageRank order (descending).
However this doesn't appear to be the case. It looks like they are really ordered by crate id (or equivalently, date of first publish) which is less meaningful.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.