Blog
Notes from Repoker
Repoker is planning poker for GitHub Projects, built by one person in the open. These are the write-ups: why it exists, and the problems that turned out to be harder than they looked. Most are engineering posts with the actual code in them — keeping a WebSocket alive under Manifest V3, encrypting Web Push by hand in a Cloudflare Worker, the GitHub App permission that quietly can’t see your personal boards.
If you landed here looking for the tool rather than the internals, start with planning poker in GitHub or the setup guides.
Waking a dead service worker with Web Push, from a Cloudflare Worker
Keeping a WebSocket alive works while something is open. But how do you reach a teammate with no tab, no panel, nothing? Web Push, from a Cloudflare Worker, with the encryption done by hand.
Why your GitHub App can't see your personal Projects
You install the App, grant it Projects access, and your board still isn't there. It isn't your permissions. GitHub Apps can read organization Projects and not user-owned ones, and here's how I found out the hard way.
Porting a Chrome extension to Firefox without forking the code
Repoker's extension shipped on Chrome first. Getting it onto Firefox took one build flag, a handful of manifest differences, and two bugs that only Firefox could surface. Here's the whole port.
Making a WebSocket survive Chrome's Manifest V3
Chrome's Manifest V3 kills your background service worker after about 30 seconds idle, and it takes your WebSocket down with it. Here's how Repoker's extension keeps the socket alive.
Why I built Repoker
Planning poker for GitHub Projects that writes the agreed estimate straight back to your board. No second backlog, no copy-paste. Here's why I built Repoker.
Repoker is an independent tool and is not affiliated with, endorsed by, or sponsored by GitHub, Inc. “GitHub” and the GitHub logo are trademarks of GitHub, Inc.