Appendix N: GitHub Advanced Search
Listen to Episode 27: Advanced Search - a conversational audio overview of this chapter. Listen before reading to preview the concepts, or after to reinforce what you learned.
Reference companion to: Chapter 05: Working with Issues | Also relevant: Chapter 09
Authoritative source: GitHub Docs: Searching on GitHub
Finding Anything Across All of GitHub
GitHub's search engine is powerful and underused. For screen reader users in particular, using the search bar with precise query syntax is often faster and more accessible than navigating filter dropdowns and checkbox menus. This reference covers the query language so you can filter anything from the keyboard.
Table of Contents
- The Search Interface
- Search Scopes
- The Core Query Language
- Searching Issues and Pull Requests
- Searching Code
- Searching Commits
- Searching Repositories
- Searching Users and Organizations
- Practical Queries for This Workshop
- Saving and Reusing Searches
1. The Search Interface
GitHub's search is accessible from nearly any page:
- Global search bar: At the top of every GitHub page - keyboard shortcut
/ to focus it from anywhere (press /, then type)
- Issues/PRs list: Each tab has its own search bar pre-scoped to that repository
- Advanced Search UI:
github.com/search/advanced - a form with individual fields for each filter. Accessible but verbose; query syntax below is faster.
Keyboard to global search
/ → Focus the global search bar (works on most GitHub pages)
Type your query → Enter
→ Results page opens, grouped by type (Code, Issues, PRs, Repositories, etc.)
Learning Cards: The Search Interface
Screen reader users
- Press
/ on any GitHub page to jump straight to the global search bar — no Tab hunting required
- After pressing Enter on a query, results are grouped by type under headings (Code, Issues, PRs, Repositories) — use
H to jump between groups
- Query syntax typed directly in the search bar is often faster and more accessible than the Advanced Search form at github.com/search/advanced
Low vision users
- The search bar sits at the very top of every GitHub page — if you lose it at high zoom, press
/ to refocus instantly
- Search results use bold text for matched terms — increase browser zoom to make the highlighted keywords easier to spot
- Pin the Advanced Search page (github.com/search/advanced) as a bookmark for days when you prefer large labeled form fields over compact query syntax
Sighted users
- Look for the search bar in the top navigation bar — it shows a
/ hint icon on the right to remind you of the keyboard shortcut
- After submitting a query, use the left sidebar type filters (Code, Issues, PRs, etc.) to narrow results visually
- GitHub highlights matched keywords in yellow within search results — scan for those highlights to evaluate relevance quickly
2. Search Scopes
By default, GitHub searches across all of GitHub. Scope modifiers restrict results:
| Modifier |
Scope |
repo:owner/name |
One specific repository |
org:orgname |
All repos in an organization |
user:username |
All repos owned by a user |
in:title |
Only matches in the title field |
in:body |
Only matches in the body field |
in:comments |
Only matches in comments |
Example: repo:community-access/accessibility-agents in:title keyboard finds issues/PRs whose titles mention "keyboard" in the accessibility-agents repo.
3. The Core Query Language
Boolean Logic
| Syntax |
Meaning |
word1 word2 |
Both words (implicit AND) |
word1 OR word2 |
Either word |
"exact phrase" |
Exact phrase match |
-word |
Exclude this word |
-label:bug |
Exclude items with this label |
Common Qualifiers
| Qualifier |
Meaning |
is:open |
Open items only |
is:closed |
Closed items only |
is:merged |
Merged PRs only |
is:unmerged |
Open or closed but not merged PRs |
is:issue |
Issues only |
is:pr |
Pull requests only |
is:draft |
Draft pull requests only |
label:name |
Items with this label |
no:label |
Items with no labels |
assignee:@me |
Assigned to you |
assignee:username |
Assigned to a specific user |
author:@me |
Created by you |
author:username |
Created by a specific user |
mentions:username |
Mentions a specific user |
involves:@me |
You are author, assignee, mentioned, or commented |
milestone:"Milestone Name" |
In a specific milestone |
no:milestone |
Not in any milestone |
no:assignee |
Not assigned to anyone |
comments:>5 |
More than 5 comments |
reactions:>10 |
More than 10 reactions |
Date Qualifiers
| Qualifier |
Meaning |
created:>2025-01-01 |
Created after a date |
created:<2025-01-01 |
Created before a date |
created:2025-01-01..2025-03-31 |
Created in a date range |
updated:>2025-06-01 |
Updated after a date |
closed:>2025-06-01 |
Closed after a date |
4. Searching Issues and Pull Requests
Going to the Issues search directly
GitHub's issue/PR search is at github.com/issues (your issues) or github.com/pulls (your PRs). The search bar there is pre-scoped to "repos you have access to involving you."
Practical queries
Find all unassigned, open accessibility issues across an org
org:community-access is:issue is:open label:accessibility no:assignee
Find good first issues in any language
is:issue is:open label:"good first issue" no:assignee
Find good first issues in a specific language
is:issue is:open label:"good first issue" language:python no:assignee
Find all PRs you need to review
is:pr is:open review-requested:@me
Find all open PRs where you were mentioned
is:pr is:open mentions:@me
Find your open issues across all repos
is:issue is:open author:@me
Find issues that are stale (open, not updated in 6+ months)
is:issue is:open repo:owner/name updated:<2024-08-01
Learning Cards: Searching Issues and Pull Requests
Screen reader users
- The
is:pr is:open review-requested:@me query is your daily go-to — it lists every PR waiting for your review without navigating the Pulls tab
- Combine
assignee:@me with is:open to get your personal task list announced as a simple results list
- Use
in:title or in:body qualifiers to avoid noisy matches buried in long comment threads
Low vision users
- Bookmark the URL after running a search — the full query is encoded in the address bar so you can reuse it without retyping
- The Issues search page (github.com/issues) pre-scopes to your repos — at high zoom this single-column list is easier to scan than a full global search
- Results show labels as colored badges next to each title — zoom in or hover to read the label text if the color alone is hard to distinguish
Sighted users
- The left sidebar on the search results page lets you toggle between Issues and PRs with one click — use it to refine without editing your query
- Look for the green (open), purple (merged), or red (closed) state icons next to each result for quick visual triage
- Star or bookmark the "good first issue" query from Section 4 — it is the fastest way to find your next contribution
5. Searching Code
Code search operates differently from issue search. As of 2024, GitHub uses an improved code search engine (sometimes called "code search v2") with better indexing.
Basic code search
repo:owner/name language:javascript aria-label
Find uses of a function across a repo
repo:owner/name symbol:handleKeyDown
Find a pattern across all repos in an org
org:community-access aria-hidden="true"
Code search qualifiers
| Qualifier |
Meaning |
language:python |
Filter by programming language |
path:src/ |
Only files under this path |
filename:config.yml |
Only files with this name |
extension:md |
Only files with this extension |
symbol:functionName |
Search for a specific symbol/function name |
content:"exact string" |
Exact string match in file content |
6. Searching Commits
Find commits with a keyword in the message
repo:owner/name fix keyboard navigation
Find commits by a specific author
repo:owner/name author:username
Find commits in a date range
repo:owner/name committer-date:2025-01-01..2025-03-31
Find commits that touched a specific file
repo:owner/name path:docs/README.md
7. Searching Repositories
Find accessible repos by topic
topic:accessibility stars:>50 is:public
Find repos with a specific language, sorted by stars
language:typescript topic:screen-reader sort:stars-desc
Repository qualifiers
| Qualifier |
Meaning |
stars:>100 |
More than 100 stars |
forks:>10 |
More than 10 forks |
is:public |
Public repos only |
is:private |
Private repos only (requires access) |
topic:topicname |
Repos tagged with this topic |
license:mit |
Repos with an MIT license |
size:<1000 |
Repos smaller than 1000 KB |
pushed:>2025-01-01 |
Repos with recent activity |
8. Searching Users and Organizations
Find users
type:user location:Seattle followers:>100
Find organizations
type:org topic:accessibility
9. Practical Queries for This Workshop
Bookmark these for use during the hackathon:
Find open contributions you can make right now in accessibility-agents
repo:community-access/accessibility-agents is:issue is:open label:"good first issue" no:assignee
Check whether your issue is already filed
repo:community-access/accessibility-agents is:issue keyboard navigation
repo:community-access/accessibility-agents is:issue label:accessibility is:open
See all your merged PRs (proof of contribution)
is:pr is:merged author:@me
Find recent discussions about a topic
repo:community-access/accessibility-agents in:discussions screen reader
10. Saving and Reusing Searches
GitHub does not have a built-in saved-search feature, but you can:
- Bookmark the URL - every search result page has the query in the URL. Bookmark it in your browser for instant re-run.
- Pin in notifications - if you're watching a repo, set up notification filters
- Accessibility Agents - use
/my-issues and /my-prs for your personal saved-search equivalents without leaving VS Code
Example bookmarkable URL
https://github.com/issues?q=is%3Aissue+is%3Aopen+assignee%3A%40me
Next: Appendix O: Branch Protection
Back: Appendix M: Accessibility Standards
Teaching chapter: Chapter 05: Working with Issues
Authoritative Sources
Use these official references when you need the current source of truth for facts in this chapter.
Section-Level Source Map
Use this map to verify facts for each major section in this file.
- Finding Anything Across All of GitHub: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs, About Git
- 1. The Search Interface: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 2. Search Scopes: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 3. The Core Query Language: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 4. Searching Issues and Pull Requests: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs, About Git
- 5. Searching Code: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 6. Searching Commits: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs, About Git
- 7. Searching Repositories: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 8. Searching Users and Organizations: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 9. Practical Queries for This Workshop: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs
- 10. Saving and Reusing Searches: GitHub Docs, home, GitHub Changelog, GitHub code search syntax, Advanced search docs