Sextant is a Chrome extension that adds a "Lines of code" panel to GitHub
repository pages. This policy describes what data the extension collects,
where it goes, and how the companion backend at sextant.octago.nl
handles it. The source code for both the extension and the backend is
published at
github.com/Galacticnaut/sextant.
The extension stores the following items in chrome.storage.local,
which lives only inside your browser profile and is not synced or transmitted
elsewhere by the extension itself:
Use "Clear all" in the Options page to delete these at any time, or uninstall the extension to remove all local storage.
For each GitHub repository page you visit, Sextant may make these requests:
The string owner/repo is sent to
api.codetabs.com. No tokens, no headers identifying you. codetabs
is a third-party service; see
codetabs.com for their policy.
If codetabs cannot serve the repo (private, too large, etc.), Sextant calls
https://sextant.octago.nl/sloc with:
owner/repo string in the request body.Authorization: Bearer … header.The backend uses the token to:
--depth=1 and a 10 MB per-file
cap to skip binary blobs) into ephemeral storage.The backend does not persist your token. Tokens are held in memory only for the lifetime of a single request, used to authenticate the clone, and discarded. Backend logs record the request path, HTTP status, and duration; they never include tokens or request bodies.
If both codetabs and the backend fail, Sextant calls GitHub's
/repos/<owner>/<repo>/languages endpoint directly
from your browser with your stored token, divides bytes-per-language by an
embedded constants table, and shows the result prefixed with ≈.
This request is from your browser to GitHub; the backend is not involved.
The "Connect GitHub" button requests the repo and
read:user scopes. repo is required to clone private
repositories; read:user is required to fetch your login name for
display. Sextant performs only read operations and never writes to your repos.
github.com.The backend's SLOC cache is keyed by commit SHA and contains only computed line counts per language. It contains no user data. Cache entries are kept indefinitely but may be evicted by the operator at any time. Backend logs are retained for up to 30 days for operational diagnostics.
Operator: Galacticnaut. File issues at github.com/Galacticnaut/sextant/issues.