Scoreboard
URL: score.irregulars.io | Source: apps/scoreboard/
The Scoreboard is the community’s gamification layer — tracking points earned across every IrregularChat service, awarding badges for milestones, and publishing leaderboards so contributions are visible and rewarding.
Why It Exists
Section titled “Why It Exists”Community contributions were invisible. Someone answering dozens of questions, posting jobs, RSVPing to events, or merging code had no persistent record of their engagement. The Scoreboard makes helpful participation visible, encourages cross-service activity, and gives members a reason to explore services they haven’t tried yet.
Point System
Section titled “Point System”Points are awarded automatically when you do something helpful across any IrregularChat service. Admins can also award points manually for contributions that fall outside the automated system.
| Action | Points | Source Service |
|---|---|---|
| Link Signal account | 50 | Scoreboard |
| Merge a PR | 40 | GitLab webhook |
| Complete task (expert) | 75 | Task Exchange |
| Complete task (hard) | 50 | Task Exchange |
| Complete task (medium) | 35 | Task Exchange |
| Win a challenge | 1.5x task points | Task Exchange |
| Post a job | 30 | Career Board |
| Report a bug | 25 | Admin / bot |
| Complete task (easy) | 20 | Task Exchange |
| RSVP to event | 20 | Event Service |
| Post an article | 20 | Field Notes |
| Create an event | 15 | Event Service |
| Answer a question | 15 | QA Form |
| Answer marked as solved | +30 bonus | QA Form |
| Complete task (micro) | 10 | Task Exchange |
| Create a task | 10 | Task Exchange |
| Ask a question | 5 | QA Form |
| Help categorize | 5 | Signal Bot |
| Share an event | 5 | Signal Bot |
| Admin award | Variable (max 500) | Signal Bot |
Badges & Achievements
Section titled “Badges & Achievements”Milestone Badges
Section titled “Milestone Badges”Milestone badges are earned once and stay on your profile permanently.
| Badge | Criteria | Bonus Points |
|---|---|---|
| First Steps | Link your Signal account | — |
| Helpful Hand | Answer your first question | 5 |
| Problem Solver | 5 answers marked as solved | 10 |
| Job Connector | Post 5 jobs | 10 |
| Event Regular | RSVP to 10 events | 10 |
| Task Machine | Complete 25 tasks | 20 |
| Code Contributor | Merge your first PR | 15 |
| Bug Hunter | Report 3 bugs | 15 |
| Community Pillar | Earn 1,000 lifetime points | 25 |
| Legend | Earn 5,000 lifetime points | 50 |
Recurring Awards
Section titled “Recurring Awards”These are awarded weekly and monthly to top contributors.
| Award | Criteria | Bonus Points |
|---|---|---|
| Weekly MVP | Most points that week | 25 |
| Monthly Champion | Most points that month | 100 |
| Weekly Helper | Most Q&A answers that week | 15 |
| Monthly Builder | Most tasks completed that month | 30 |
To qualify for Weekly MVP or Monthly Champion, you must earn at least 50 points from at least 3 different action types. Ties are resolved by awarding all tied users.
Signal Bot Commands
Section titled “Signal Bot Commands”Interact with the Scoreboard directly from Signal without opening a browser.
| Command | Description |
|---|---|
!score | Your score, rank, and recent badges |
!score @person | Someone else’s score |
!leaderboard | Top 10 this week |
!leaderboard month | Top 10 this month |
!leaderboard all | Top 10 all-time |
!score award @person <points> <reason> | Admin-only manual award (max 500) |
Example responses:
!score 📊 Your Score ━━━━━━━━━━━━ Points: 245 (#12 this week) This week: 85 | This month: 180 🏅 🚀 🤝 📅 Recent: +20 rsvp event +15 answer question +30 answer solved 🔗 https://score.irregulars.io
!leaderboard 🏆 Weekly Leaderboard ━━━━━━━━━━━━━━━━━━ 🥇 alice — 312 pts 🥈 bob — 245 pts 🥉 charlie — 198 pts 4. dana — 150 pts 5. eve — 142 pts ━━━━━━━━━━━━━━━━━━ 🔗 https://score.irregulars.ioFor full command documentation including account linking, see Scoreboard Commands.
Integrations
Section titled “Integrations”Every community service feeds point-worthy actions into the Scoreboard automatically. Services use a fire-and-forget pattern so the Scoreboard never blocks the originating action.
Career Board ------> Scoreboard API (/api/bot/award)Task Exchange -----> Scoreboard APIQA Form -----------> Scoreboard APIEvent Service -----> Scoreboard APIField Notes -------> Scoreboard APISignal Bot --------> Scoreboard APIGitLab ------------> Scoreboard Webhook (/api/webhook/gitlab)- Career Board — Points for posting jobs (after 24-hour quality gate)
- Task Exchange — Points for creating, completing, and winning tasks
- QA Form — Points for asking and answering questions, solved answers get a bonus
- Event Service — Points for RSVPs and creating events
- Field Notes — Points for publishing articles
- Signal Bot — Points for help categorize, share event, and admin awards
- GitLab — Points for merging PRs to the monorepo (webhook)
All awards are idempotent. Duplicate requests from the same source are safely ignored.
How to Access
Section titled “How to Access”- Visit score.irregulars.io and log in with your IrregularChat SSO account
- Link your Signal account at score.irregulars.io/link for 50 bonus points and the “First Steps” badge
- Browse the leaderboard, check your profile, and track your badge progress
- Use
!scoreand!leaderboardcommands in any Signal group with the bot
Tech Stack
Section titled “Tech Stack”| Component | Technology |
|---|---|
| Runtime | Cloudflare Workers |
| Framework | Hono |
| Database | D1 (users, point events, badges, config) |
| Sessions | KV (SESSIONS) |
| Auth | Authentik OIDC via @irregularchat/shared-utils |
| Webhooks | GitLab MR merge events |
| Cron | Weekly (Sunday) + Monthly (1st) for recurring awards and counter resets |