Vibeleaderboard
Index / app
Visit stamphog.vercel.app
Category
Productivity
Rank
No. 2190Tools index

Previous survey · No. 2176 ·

Pricing
Open Source
Type
APP
Builder
posthog
GitHub
4 stars
Date

About

Realtime leaderboard of who gives and receives the most PR approval stamps in Slack. Gamifies code review.

What it does

Stamphog turns approval reactions into a visible record of code review activity. It watches configured Slack channels, recognizes messages containing GitHub or Graphite pull request links, and attributes tracked emoji reactions to reviewers and message authors. The web app separates stamp givers from requesters, shows recent activity, and supports several time windows.

Why it's ranked here

The concept is narrow, understandable, and backed by practical ingestion details. Reaction removal, message tracking, historical import, deduplication, retention cleanup, and Slack signature verification address more than the happy path. Still, the project calls itself chaotic and warns against treating its standings seriously, which correctly frames it as a culture tool rather than an authoritative performance system.

What's good

It counts requesters before they receive a stamp, ignores unrelated emoji and messages without qualifying links, and handles removed reactions. Historical imports are bounded, deduplicated, and safe to repeat. Deterministic fixture data lets contributors populate the interface without Slack. Separate views for giving and requesting reviews make the underlying behavior easier to interpret.

Tradeoffs

It recognizes only GitHub and Graphite links and a fixed set of 19 emoji variants. Setup requires a Slack app, event subscriptions, OAuth scopes, signing credentials, a bot token, and a Convex deployment. Historical import and documented retention cover only 90 days. Rankings measure reactions, not review depth, correctness, turnaround time, or code quality.

How to use it well

Use it with a Slack-centered engineering team that already requests pull request reviews in shared channels and consistently reacts with approval stamps. Treat it as a lightweight social prompt and activity signal. Seed fixtures before connecting Slack, then backfill selected channels. Do not use it for review assignment, policy enforcement, quality assessment, or formal performance evaluation.

Technical notes+

README.md documents pnpm setup, Convex initialization, Slack event subscriptions, OAuth scopes, environment variables, deterministic Faker fixtures, bounded backfill, deduplication, and retention pruning. package.json defines a private ESM TypeScript application built with TanStack Start, React, Vite, Convex, React Query, PostHog, and Motion. src/router.tsx connects ConvexQueryClient to QueryClient and enables SSR query integration. src/routes/index.tsx preloads leaderboard and recent-event queries, offers five time windows, and renders giver, requester, totals, and activity views. src/lib/window-days.ts clamps stored window preferences to 1 through 90 days, while src/lib/theme.ts persists theme selection in a cookie. src/routes/__root.tsx supplies metadata, theme hydration, PostHog instrumentation, and shared providers.

Observed

License
MIT
Primary language
TypeScript with React TSX
Packaging
Private ESM package installed and run with pnpm
Interface
Web application backed by Convex realtime queries
Integration surface
Slack Events endpoint with reactions, channel messages, users, and emoji access
Supported link sources
GitHub and Graphite pull request URLs
Application structure
The generated route tree defines a single root page

Read from README.md, package.json, src/router.tsx, src/routeTree.gen.ts, src/lib/seo.ts, src/lib/theme.ts, src/lib/utils.ts, src/routes/index.tsx, src/routes/__root.tsx, src/lib/window-days.ts, src/hooks/use-stamps.ts, src/components/not-found.tsx, src/components/mode-toggle.tsx, src/components/theme-provider.tsx, src/components/default-catch-boundary.tsx.

What it can do

  • Track PR approval stamps given by each team member

    Slack PR approval notifications and reactionsCount of stamps given per user

  • Track PR approval stamps received by each team member

    Slack PR approval notifications and reactionsCount of stamps received per user

  • Generate realtime leaderboard of stamp givers

    PR approval activity data from SlackRanked list of users who give the most approvals

  • Generate realtime leaderboard of stamp receivers

    PR approval activity data from SlackRanked list of users who receive the most approvals

  • Monitor Slack channels for PR approval activity

    Slack channel messages and reactionsDetected PR approval events and stamps

  • Update leaderboard rankings in realtime

    New PR approval events from SlackRefreshed leaderboard positions and scores

Tags

slackleaderboardcode-reviewpull-requestsgamification

Tech Stack

Node.jsTypeScriptVite

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.