website/js/repo.js

website/js/repo.js

the website's source · 392 lines · read it on GitHub

WHAT IT DOES

Live repository data: stars, description, latest release, and the README rendered with syntax highlighting.

# The one third-party request on this site, and why it is opt-in

Everything else here is served from the same origin. This module talks to api.github.com, which learns your IP address and that you looked at this project. GitHub already knows both -- it is serving the page you are reading -- so the marginal cost is nil for most visitors. But someone reading over Tor or a mirror is in a different position, so the fetch is announced in the page and can be skipped: the panel degrades to static text and a plain link, and nothing else on the site depends on it.

No token, no cookies, no credentials. Unauthenticated GitHub API requests are rate-limited by IP to 60/hour, which a documentation page will never approach.

IN PLAIN WORDS

This is the panel showing the project's stars, its latest release and its README, read from GitHub as you look at it.

It is the only thing on this site that talks to anybody else's server, and the page says so before it does. GitHub learns your address and that you looked at this project -- which it already knows, because it is serving you this page. If you would rather it did not happen at all, the panel turns into a plain link and nothing else on the site notices.

WHAT CALLS WHAT

text line 38 number line 43 still line 48 arrive line 59 countTo line 78 frame line 92 loadMeta line 104 safeAssetUrl line 150 loadRelease line 158 stripHtmlBlocks line 245 loadReadme line 283 settleButton line 345 start line 351

Read out of the source: an edge means the callee’s name appears, called, inside the caller’s body. A syntactic reading, not a resolved one.

FunctionLine
text38
number43
still48
arrive59
countTo78
frame92
loadMeta104
safeAssetUrl150
loadRelease158
stripHtmlBlocks245
loadReadme283
settleButton345
start351