perxeuss's blog

By perxeuss, history, 3 months ago, In English

CF Performance Mirror is a lightweight Chrome extension that shows contest-wise avg/median solve times (A, B, C…) and high WA% topics on Codeforces profiles, with time-based filters for performance analysis. Compact, non-intrusive, and uses only public CF APIs.

Why I built this

When preparing for contests I kept asking: Which problem types slow me down? How long do I actually take on an A/B/C? CF Performance Mirror surfaces those answers right on the profile, so you can focus training where it helps most.

Key features (quick)

  1. Per-index timing: average & median solve time (minutes) per problem index (A, B, C…).
  2. High WA% topics: topics ranked by wrong-attempt percentage (contest / overall).
  3. Time-based filters — Track solving speed and WA% across ranges like All Time, Last Month, and Last Year.
  4. Modes: Total / Rated / Unrated contests — view timings separately.
  5. Compact UI: anchored under the profile area (like other CF widgets), non-blocking.
  6. Privacy first: client-side script only reads public CF APIs (user.status, contest.list, user.rating).
  7. Adaptive UI — Automatically adjusts theme and colors for a smoother, personalized experience.
  8. No personal data collected or sent to servers.

UI preview of CF Performance Mirror on a user profile

screenshot

Shows contest-wise timings

alt text

Shows contest-wise and global WA% analysis

How to use

  1. Download from Chrome Web Store OR Download from Firefox Add-ons

  2. Open any Codeforces profile: https://mirror.codeforces.com/profile/

  3. Scroll to the profile area — the CF Performance Mirror card loads under the existing widgets.
  4. Toggle Div categories and Total/Rated/Unrated to compare. Click a WA% topic to note weak areas.

alt text

Some Clarifications

  1. For combined Div1 + Div2 contests (including global contests), the system classifies your participation based on your division—Div2 participants are counted under Div2, and Div1 participants under Div1.

  2. All special contest types (such as “Good Bye 2025, Hello 2026”) will be shown under the Other section in statistics.

Short privacy note

CF Performance Mirror only accesses public Codeforces API endpoints to read profile/submission/contest metadata. It does not collect, store, or transmit personal data to any server. All analysis runs client-side in your browser.

Feedback & Suggestions

If you have any suggestions, feature requests, or notice any issues, please let me know in the comments.

GitHub: https://github.com/perxeusss/cf-performance-mirror

Your feedback will help me improve and upgrade this extension for everyone.

  • Vote: I like it
  • +6
  • Vote: I do not like it

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by perxeuss (previous revision, new revision, compare).

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by perxeuss (previous revision, new revision, compare).

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Very nice! Just a quick question: where do Div 1+2 Contests fit in?

  • »
    »
    3 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    For combined Div.1 + Div.2 contests, the extension classifies the contest based on the division you participated in, so your stats appear in the correct category. If you notice any issues, please let me know, I’m actively improving it.

  • »
    »
    3 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    There was an issue related to Div1 + Div2 contests, but I have fixed it now. It will be updated soon and will work as explained above.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

The data looks suspicious , I don't think I take 12 mnts in div2As on average

  • »
    »
    3 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Yes, there was an issue related to Div1 + Div2 contest timing. I have fixed it now. It will be updated soon and will be 100% correct. Apart from this, The WA% friction is already accurate.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by perxeuss (previous revision, new revision, compare).

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by perxeuss (previous revision, new revision, compare).

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by perxeuss (previous revision, new revision, compare).

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by perxeuss (previous revision, new revision, compare).