{"id":45579976,"url":"https://github.com/brunoaclopes/pullbar","last_synced_at":"2026-02-23T11:42:17.466Z","repository":{"id":339660488,"uuid":"1162872149","full_name":"brunoaclopes/pullbar","owner":"brunoaclopes","description":"Pullbar macOS menu bar app for GitHub PR monitoring","archived":false,"fork":false,"pushed_at":"2026-02-20T21:10:07.000Z","size":6407,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-21T01:41:47.948Z","etag":null,"topics":["github","macos","menubar","pull-requests","swift","swiftui"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brunoaclopes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-20T19:57:23.000Z","updated_at":"2026-02-20T21:12:15.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/brunoaclopes/pullbar","commit_stats":null,"previous_names":["brunoaclopes/pullbar"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/brunoaclopes/pullbar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brunoaclopes%2Fpullbar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brunoaclopes%2Fpullbar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brunoaclopes%2Fpullbar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brunoaclopes%2Fpullbar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brunoaclopes","download_url":"https://codeload.github.com/brunoaclopes/pullbar/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brunoaclopes%2Fpullbar/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29741729,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-23T07:44:07.782Z","status":"ssl_error","status_checked_at":"2026-02-23T07:44:07.432Z","response_time":90,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github","macos","menubar","pull-requests","swift","swiftui"],"created_at":"2026-02-23T11:42:16.963Z","updated_at":"2026-02-23T11:42:17.454Z","avatar_url":"https://github.com/brunoaclopes.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pullbar\n\nPullbar is a native macOS menu bar app (macOS 14+) for tracking GitHub pull requests without living in the browser.\n\n## Why Pullbar\n\n- **Focused PR dashboard** in your top bar\n- **Fast triage** with tabbed views and status summaries\n- **Custom workflows** with query + rule-based tab filters\n- **Secure auth** with token storage in macOS Keychain\n\n## Highlights\n\n- GitHub.com and GitHub Enterprise support (host/API configurable)\n- Optional one-click import from authenticated `gh` CLI sessions\n- Built-in tabs: **Assigned**, **Review requested**, **Created by me**\n- Custom tabs (up to 5 total), including rule filters:\n  - comments (has/no unresolved)\n  - review state\n  - checks state\n- Sort PRs by updated date or created date\n- Open PR/checks directly from rows\n- Auto-refresh with configurable interval\n- Launch-at-login toggle\n\n## Quick Start\n\n### Run from Xcode\n\n1. Open the package in Xcode.\n2. Build and run the `Pullbar` executable target.\n3. Open **Settings** and add your GitHub PAT.\n\n### Run from terminal (signed)\n\n```bash\n./scripts/run-signed.sh\n```\n\nDry run (sign only):\n\n```bash\n./scripts/run-signed.sh --no-run\n```\n\n## Install as an app\n\nInstall to `/Applications`:\n\n```bash\n./scripts/install.sh\n```\n\nInstall and launch:\n\n```bash\n./scripts/install.sh --run\n```\n\nOptional app icon: place `Pullbar.icns` at `Assets/AppIcon/Pullbar.icns`.\n\n## Security\n\n- PAT tokens are stored only in macOS Keychain (`SecItemAdd` / `SecItemUpdate`).\n- Tokens are never persisted to `UserDefaults` or logs.\n\n## Project Layout\n\n- `Sources/Pullbar/App` — app lifecycle and menu bar popover host\n- `Sources/Pullbar/Domain` — shared models/enums\n- `Sources/Pullbar/Features` — Pull Requests + Settings flows\n- `Sources/Pullbar/Infrastructure` — GitHub client, cache, keychain, gh integration\n- `scripts` — local build/run/install tooling\n- `docs` — architecture and operations references\n\n## Engineering Docs\n\n- `CONTRIBUTING.md`\n- `docs/ARCHITECTURE.md`\n- `docs/OPERATIONS.md`\n- `docs/RULESETS.md`\n- `SECURITY.md`\n- `SUPPORT.md`\n- `LICENSE`\n\n## Contributor Tooling\n\n- Templates and ownership: `.github/ISSUE_TEMPLATE/`, `.github/pull_request_template.md`, `.github/CODEOWNERS`\n- Automation: `.github/workflows/ci.yml`, `.github/workflows/release-artifact.yml`, `.github/dependabot.yml`\n\n## Releases\n\n- Tag push (`v*`) automatically builds and publishes a GitHub Release.\n- Manual release (`workflow_dispatch`) supports:\n  - semantic bump dropdown: `patch` / `minor` / `major`\n  - optional explicit tag override\n  - target commit/branch selection\n  - release title override\n  - prerelease/draft flags\n  - custom release notes (or auto-generated notes)\n- Release output includes:\n  - `Pullbar-\u003ctag\u003e.app.zip`\n  - SHA-256 checksum file\n  - `RELEASE_REPORT.md` artifact","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrunoaclopes%2Fpullbar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrunoaclopes%2Fpullbar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrunoaclopes%2Fpullbar/lists"}