https://github.com/zadr/github-statusboard
summarize PR states
https://github.com/zadr/github-statusboard
Last synced: 19 days ago
JSON representation
summarize PR states
- Host: GitHub
- URL: https://github.com/zadr/github-statusboard
- Owner: zadr
- License: apache-2.0
- Created: 2026-04-07T18:34:41.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-05-28T14:49:25.000Z (25 days ago)
- Last Synced: 2026-05-28T16:23:19.644Z (25 days ago)
- Language: Swift
- Size: 14.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# statusboard
Terminal dashboard for your GitHub PRs.
```
Merging (1)
- [acme/webapp] Add dark mode toggle (#342)
Approved (1)
- [acme/webapp] Fix login redirect loop (#338)
Waiting on CI (2)
- [acme/api] Rate limit middleware (#401)
- [acme/webapp] Update onboarding copy (#344)
Work Needed (1)
- [acme/api] Switch to connection pooling (#395)
Open (3)
- [acme/api] Add pagination to /users endpoint (#399)
- [acme/docs] Update API authentication guide (#87)
- [acme/webapp] Lazy load dashboard charts (#340)
Draft (2)
- [acme/api] gRPC prototype (#402)
- [acme/webapp] Experiment: server components (#337)
Awaiting Review (2)
- [acme/api] @alice - Add webhook retry logic (#398)
- [acme/webapp] @bob - Accessibility audit fixes (#341)
```
## Install
```
swift build -c release
cp .build/release/statusboard /usr/local/bin/
```
## Usage
```
statusboard # refreshes every 15 minutes
statusboard --once # print once and exit
statusboard --refresh-interval 1800 # refresh every 30 minutes
```
### Monitoring other users
By default the dashboard tracks the currently authenticated user (`@me`). To
watch other users instead, pass `--monitor-user` one or more times. When this
flag is present, `@me` is no longer included in any search.
```
statusboard --monitor-user=alice
statusboard --monitor-user=alice --monitor-user=bob
```
Pass `--monitor-user` once per user; comma-separated lists are not supported
here. Results from each user are merged and deduplicated.
### Filtering
Limit which orgs and repos appear. All four flags may be repeated, accept
comma-separated lists, and accept glob patterns (`*`, `?`, `[abc]`). Matching
is case-insensitive. Quote globs to keep your shell from expanding them.
```
--include-org=acme # only PRs from orgs matching 'acme'
--exclude-org=zadr # hide PRs from orgs matching 'zadr'
--include-repo='ios*' # only repos whose name starts with 'ios'
--exclude-repo='*-archive' # hide repos whose name ends with '-archive'
```
For example, to show every org except `zadr`, and within those only repos
starting with `ios`:
```
statusboard --exclude-org=zadr --include-repo='ios*'
```
Include filters are OR'd within a flag and AND'd across flags. Exclude filters
always win over include filters.
Requires [`gh`](https://cli.github.com/) authenticated via `gh auth login`.