Skip to content

FilOzone/foc-gh

Repository files navigation

FOC GH

FOC GH logo

Chromium Manifest V3 browser extension for FOC TPMs and team members working in GitHub. It helps with things like connecting day-to-day issue and PR work to the FOC Project Board.

Features

  1. Make FOC’s project board "global" (i.e., support cross-org issues and PRs) — Manage the board (add items, edit fields where the API allows) from GitHub issues and pull requests on configured repos, with a native-style sidebar and autosave for supported field types (single select, number, text, iteration).
  2. Global auto-expand for project panels — Optional setting so GitHub’s right-hand Project panel auto-expands for issues and PRs (works across projects, not only FOC).
  3. OR filter for project boards — Enter OR queries in the project board filter bar (e.g. cycle:202605-2 biglep (-status:"🎉 Done") OR (-last-updated:1days)) to see merged results from multiple filter branches in a single view. The extension splits the query, fetches each branch separately, deduplicates, and renders the combined results through GitHub’s native UI. This is particularly useful during standups where you want to see all your active and recently completed work in a single view. Configure which boards support this in Options → OR filter for project boards (defaults to all FilOzone projects).

🎥 2026-03-29 Demo

2026-03-29.demo-edited.-.compressed.-.1.5x.mp4

Fastest way to start using it

Chrome Web Store (recommended)

  1. Install from the Chrome Web Store.
  2. Click the FOC GH extension icon (puzzle piece → pin it) to open Options.
  3. Sign in with GitHub (OAuth) — or switch to Personal access token and paste a classic PAT with project, repo, read:org scopes (details).
  4. Navigate to an issue or PR in a configured repo (e.g. filecoin-project/filecoin-pin) — the FOC project card appears in the right sidebar.

OAuth note: The production OAuth app must be approved in each GitHub org whose issues/PRs you work with. If you see "OAuth App access restrictions" errors, ask an org owner to approve the app or use a classic PAT instead. See OAuth org approvals.

Build/install locally

  1. Check out the repo.
  2. Run npm install.
  3. Run npm run build.
  4. Open chrome://extensions, enable Developer mode, Load unpacked, and choose extension/dist/ (build output from the repo root).
  5. Create a classic PAT following PAT permissions.
  6. Save the PAT in the extension Options page.

(OAuth for local builds is documented in extension/README.md; it needs GitHub OAuth client values in .env.local before npm run build. Ask FilOzone maintainers if you need those credentials.)

For developers

The Fastest way steps above cover PAT + unpacked install; full developer setup (Chrome Web Store ZIP, npm run build:zip, both OAuth apps, extension IDs) lives in extension/README.md (read from the repository root, not only from extension/). That guide lists the local extension ID (stable via committed extension/manifest-id-public.b64) vs the Chrome Web Store listing ID, and links to FilOzone’s two GitHub OAuth apps (dev vs prod).

Build & distribution

Need Where
Local unpacked build, stable extension ID, dev OAuth extension/README.mdLocal / unpacked and Extension IDs
Chrome Web Store ZIP (no manifest.key), production OAuth extension/README.mdChrome Web Store ZIP
OAuth apps, callbacks, FilOzone links docs/github-oauth-app.md
Env vars, Actions secret names .env.example
Manual smoke checklist (CI, zip, local) specs/005-build-distribution-workflows/quickstart.md

CI: .github/workflows/extension-ci.yml runs on push/PR (see extension/README.md).

Documentation

About

Chrome browser extension for FOC project management in GitHub

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors