GitHub's Hidden Gem: Features Most Developers Walk Past
GitHub features that most developers walk past every day: the search shortcuts, network graph, blame timeline, and the REST API explorer hiding in plain sight.
GitHub ships so many features that the genuinely useful ones get buried under the surface. These are the ones worth surfacing.
The Search That Nobody Uses Correctly
GitHub’s search supports a full query language. Most people type a word and settle for noise. A few operators that change this:
# Find all TODO comments in your org's Python files
org:yourorg language:python TODO in:file
# Find recently created issues assigned to you
is:issue is:open assignee:@me created:>2024-01-01
# Find code that uses a deprecated function across all your repos
org:yourorg "deprecated_function(" language:javascript
The in:file qualifier searches inside file contents, not just filenames or descriptions. Combined with org: or repo:, it becomes a lightweight code audit tool.
The Blame Timeline
git blame in your terminal shows who last touched each line. GitHub’s blame view does the same but with one extra trick: click any commit hash in the blame margin, then click “View blame prior to this commit” to rewind the file’s history one author at a time.
This is how you trace a bug to its origin without writing git log -S queries. Navigate to any file → click Blame → follow the chain backward.
The Network Graph
github.com/OWNER/REPO/network shows a visual graph of all forks and their branches relative to the upstream. When you want to know if someone else already solved the problem you’re working on, this is faster than searching for forks manually.
Useful when:
- An upstream repo hasn’t merged a useful PR and you want the fixed fork
- You want to find active forks of an abandoned project
- You’re tracing where a feature originated before it was upstreamed
The Web Editor
Press . (period) on any repo and the full repository opens in a VS Code-in-browser instance. No clone, no local setup. Works on mobile in a pinch.
For heavier editing, press > (Shift + period) to open it in github.dev with the full sidebar. Still no local setup; the limitation is that you cannot run a terminal or install extensions.
Permanent Links
A link to a file on GitHub without a commit hash will break when the file changes. Add ?plain=1 to see the raw file; add a commit hash to make it permanent:
# Fragile — breaks when main is updated
https://github.com/owner/repo/blob/main/path/to/file.md
# Permanent — press Y on any file to get this URL
https://github.com/owner/repo/blob/a3f9d12/path/to/file.md#L42-L58
Press Y on any file to switch the URL from the branch name to the current commit hash. The #L42-L58 fragment highlights a line range.
The REST API Explorer
Every GitHub page has an API equivalent. The API explorer at docs.github.com/en/rest is the reference, but the fastest way to discover a specific endpoint is to open the browser console on a GitHub page and watch the network tab — most UI interactions hit documented REST endpoints directly.
# List all open PRs in a repo (no gh CLI needed)
curl -s \
-H "Authorization: Bearer $GITHUB_TOKEN" \
"https://api.github.com/repos/OWNER/REPO/pulls?state=open" \
| jq '.[].title'