Git Notes
GitHub Projects (formerly Project Boards) is a built-in project management tool that brings Kanban-style and table-style views directly into your GitHub...
GitHub Projects (formerly Project Boards) is a built-in project management tool that brings Kanban-style and table-style views directly into your GitHub workflow. Unlike external tools like Jira or Trello, GitHub Projects integrates natively with issues and pull requests, meaning your project tracking stays connected to your actual code without context switching between applications.
Understanding GitHub Projects
GitHub Projects V2 (the current version) offers flexible views for organizing work. You can visualize the same data as a board (Kanban columns), a table (spreadsheet-like), or a roadmap (timeline). Projects live at the organization or user level, not just at the repository level, so a single project can track issues across multiple repositories.
Creating a Project
Navigate to your profile or organization, click "Projects," and create a new project. Choose from templates:
- Board — Classic Kanban with To Do, In Progress, Done columns
- Table — Spreadsheet view with custom fields
- Roadmap — Timeline view for planning
- Blank — Start from scratch
Board View: Kanban Workflow
The board view organizes items into columns representing workflow stages:
| Backlog | To Do | In Progress | Done |
|---|---|---|---|
| #23 Add | #45 Fix | #67 Build | #12 Update |
| dark mode | login bug | dashboard | docs |
| #34 Improve | #56 Add | #78 Refactor | #19 Fix |
| search | tests | API layer | navigation |
Drag items between columns as work progresses. Each card can be an issue, pull request, or a draft item (a quick note that you can convert to an issue later).
Table View: Custom Fields
The table view lets you add custom fields beyond what issues provide:
| Title | Status | Priority | Sprint | Estimate | Assignee |
|---|---|---|---|---|---|
| Add auth | In Progress | High | Sprint 3 | 5 pts | Alice |
| Fix crash | To Do | Critical | Sprint 3 | 2 pts | Bob |
| Update docs | Backlog | Low | Sprint 4 | 1 pt | - |
Custom field types include:
- Single select — Dropdown options (status, priority)
- Text — Free text field
- Number — Numeric values (story points, estimates)
- Date — Deadlines, start dates
- Iteration — Sprint cycles with fixed durations
Adding Items to Projects
From an issue: Open any issue and click "Projects" in the sidebar to add it to a project.
From the project board: Click "+ Add item" at the bottom of any column. You can add existing issues or create draft items.
Using GitHub CLI:
# Add an issue to a project
gh project item-add PROJECT_NUMBER --owner OWNER --url ISSUE_URLBulk adding from search:
# Add all open bugs to a project
gh issue list --label "bug" --json url -q '.[].url' | while read url; do
gh project item-add 1 --owner myorg --url "$url"
doneAutomation with Workflows
GitHub Projects includes built-in automation rules:
Auto-add: Automatically add issues to the project when they are created in specific repositories.
Auto-status: Move items to "Done" when their linked issue or PR is closed.
Auto-archive: Archive items that have been in "Done" for more than 14 days.
Custom workflows can be triggered by:
- Item added to project
- Item reopened
- Issue closed
- PR merged
- Label applied
Grouping and Filtering
Organize your view by grouping items:
- Group by assignee to see workload distribution
- Group by priority to focus on what matters
- Group by milestone to track release progress
- Group by iteration to plan sprints
Filter syntax:
| status | "In Progress" assignee:username |
| priority | High label:bug |
| milestone | "v2.0" -status:Done |
Roadmap View
The roadmap view displays items on a timeline:
Set start and target dates on items to see how work fits together chronologically. This view is excellent for communicating timelines to stakeholders.
Project Insights
GitHub Projects provides analytics:
- Burndown charts showing remaining work over time
- Velocity tracking across iterations
- Distribution charts showing work by status, assignee, or priority
Best Practices
Keep boards current. A stale board is worse than no board — it gives false confidence about project status. Update cards daily.
Limit work in progress. If "In Progress" has 20 items, nothing is really in progress. Set column limits to focus the team.
Use iterations for time-boxing. Two-week sprints with defined start and end dates help maintain rhythm and predictability.
Connect everything. Use actual issues and PRs rather than draft items when possible. This maintains traceability from task to code to deployment.
Review weekly. Use the board in stand-ups and sprint planning. If no one looks at it, it will not be maintained.
Key Takeaways
GitHub Projects brings project management directly into your development workflow. The board view provides Kanban simplicity, the table view offers spreadsheet flexibility, and the roadmap view communicates timelines. Built-in automation keeps cards moving without manual intervention. By keeping your project tracking connected to your actual issues and pull requests, you maintain a single source of truth for what is happening in your software development process.
Exam Focus
Revise definitions, diagrams, examples, and short-answer points for GitHub Project Boards.
Interview Use
Prepare one clear explanation, one practical example, and one common mistake for this Git & GitHub topic.
Search Terms
git-github, git & github, git, github, collaboration, project, boards, github project boards
Related Git & GitHub Topics