Three counters, each with a job. Rating says how well you solve. XP says how much you've done. Streaks say whether you showed up. None of them can be bought with a Run button.
01Rating
Every rank is earned on Accepted.
Every account starts as a Novice. Accepted submissions move the rating; nothing else does. Five ranks — Novice, Apprentice, Adept, Expert, Master — sit on fixed thresholds, so “Adept” means the same thing for everyone, and your profile always shows exactly how far the next rank is.
It's deliberately simple. A rating you can explain in a sentence is one you can actually chase.
Tier thresholds
Novice
Where everyone begins.
0
Apprentice
The habit is forming.
100
Adept
Consistent, across difficulties.
400
Expert
Hard problems, regularly.
900
Master
The top of the ladder.
1,500
02XP
Additive, and it never goes down.
XP is the volume counter. Problems pay by difficulty, bug fixes pay a flat fifty, and the dashboard shows how much you've earned this week next to the total. It's the number that rewards a long Tuesday evening even when the rating didn't budge.
01
Challenges pay by difficulty
An accepted submission adds XP scaled to the problem's difficulty. Solving it again doesn't.
02
Bug fixes pay a flat 50
Every completed hunt is worth 50 XP, on top of counting as activity for the day.
03
The daily contest pays at midnight UTC
When the day closes, everyone who solved its problem gets 20 XP; the fastest gets 15 more and the second fastest 10.
04
Two counters, one total
Your profile keeps problem XP and bug XP separately; the dashboard shows the sum and this week's gain.
03Streaks and the heatmap
A year of days, and a number that notices gaps.
A day counts when you get something accepted — a challenge, a SQL problem or a bug hunt. The heatmap keeps a year of those days; the streak counts the current run and remembers your best. Both live on your profile and on the dashboard, next to the tier meter.
codekairo/profile
FIG. 01Activity filling in week by week; active days and streaks count up alongside.
codekairo/profile
FIG. 02An Accepted arrives: the solving ring, the rating and the streak move together.
04Leaderboards
Compared the way you choose.
The leaderboard can be sliced by what's being ranked, by scope and by time window, and your own row is pinned at the top so you never scroll to find yourself. Category ranks show where you stand for the kind of problem you care about, not just overall.
codekairo/leaderboard
FIG. 03Your row, pinned and highlighted. An Accepted comes in, the rating ticks up, and the board re-ranks around you.
05Questions
What rank do I start with?
Does a wrong submission lower my rating?
What counts as an active day for streaks?
Where do I see the distance to the next tier?
Every Master started as a Novice.
Rating, XP and streaks — all earned against real tests.