adarsh7203's blog

By adarsh7203, 2 months ago, In English

Hello everyone!

I built CF UpsolveX, an automated upsolving companion for Codeforces.

It consists of a full-stack web application along with a Chrome extension that helps you track, prioritize, and consistently upsolve the problems you missed in contests.


Problem:

While participating in Codeforces contests, I often found myself saying:

"I'll upsolve the remaining problems tomorrow."

But after a few contests, dozens of unsolved problems start piling up and it becomes difficult to decide:

  • Which problems should be upsolved first?
  • Which contests still have pending problems?
  • How much progress has been made overall?
  • Whether I am actually being consistent with upsolving?

Since upsolving is one of the most important aspects of improvement in competitive programming, I felt there should be a better system for tracking and prioritizing missed problems.


Solution:

So I built CF UpsolveX.

It automatically tracks your missed problems across Codeforces contests, prioritizes them intelligently, and helps you stay consistent with upsolving.

The project consists of:

  • A full-stack web application.
  • A Chrome extension integrated directly into Codeforces.

Both work individually and remain perfectly synchronized.


Core Feature — Smart Priority Queue:

Instead of showing hundreds of unsolved problems in a flat list, CF UpsolveX ranks every problem using a custom priority algorithm:

Priority = w₁ × Recency + w₂ × Difficulty + w₃ × Attempts

The algorithm considers:

  • Recency — Recent contest problems rank higher (exponential decay).
  • Difficulty — Gaussian bell curve around YOUR rating.
  • Attempts — More failed attempts during the contest = higher priority.

Features:

Web Application:

  • Analytics Dashboard: Upsolve Velocity, Completion Rate, Current Streak & Rating Progression charts.

  • Contest History: Solved vs Upsolved vs Unsolved statistics & Progress tracking for every contest.

  • Prioritized Upsolve Queue across all contests.

  • User customization options: Maximum problem index filtering, Virtual contest toggle & Personalized preferences.

  • Automated Email reminders after each contests.


Chrome Extension:

  • Adds a CF UpsolveX button directly to the Codeforces navbar.

  • Sleek sidebar integrated into Codeforces.

  • Displays: Pending problems, Completion percentage & Current streak.

  • Shows top-priority problems with ratings and division badges.

  • One-click synchronization.

  • Problem index filtering without leaving Codeforces.

  • Works seamlessly alongside the web application.


Web App Screenshots:

Spoiler

Chrome Extension Screenshots:

Spoiler

Download:

Website:

https://cfupsolvex.netlify.app/

Chrome Extension:

https://chromewebstore.google.com/detail/cf-upsolvex-companion/aeflackekjfejbcgaednpccgadpponaa


Use Cases:

  • Track missed problems across contests.
  • Prioritize what to upsolve next.
  • Maintain consistency in upsolving.
  • Analyze upsolving progress.
  • Improve competitive programming performance.

Tech Stack:

  • Frontend: React + Vite, Recharts
  • Backend: FastAPI, APScheduler, Jinja2
  • Database: Supabase (PostgreSQL)
  • Extension: Chrome Manifest V3
  • APIs: Official Codeforces API
  • Deployment: Netlify + Render

Links:

Codeforces Profile:

https://codeforces.me/profile/adarsh7203

LinkedIn Post:

https://www.linkedin.com/posts/adarsh7203_competitiveprogramming-codeforces-webdevelopment-ugcPost-7475847205392760832-qTlN/


Feedback:

I would really appreciate your feedback and suggestions!

If you find this useful, please consider upvoting.

Thank you and Happy Upsolving!

Full text and comments »

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

By adarsh7203, 5 months ago, In English

Hello everyone!

I built a Chrome extension that helps you filter your problems on Codeforces by tags, verdict, date and rating range.


Problem

While practicing on Codeforces, I felt that there is no direct way to:

  • View problems by specific tags
  • Filter problems based on when they were solved
  • Analyze submissions based on verdict (AC, WA, etc.)
  • Explore problem-solving patterns of top competitive programmers

This makes revision, topic-wise practice, and analysis a bit inconvenient.


Solution

So I built a Chrome extension that adds these features directly to the submissions page.

It integrates seamlessly with the existing Codeforces UI and allows you to filter and analyze problems efficiently.


Features

  • Filter problems by tags
  • Filter by verdict (AC, WA, TLE, etc.)
  • Date range filtering
  • Rating range filtering (min–max)
  • Shows number of problems
  • Displays problem ratings
  • Sort problems by rating (ascending / descending toggle)
  • Clean UI integrated with Codeforces
  • Works on both light & dark mode (including Dark Reader)

Where it works

  • Codeforces Submissions Page

Screenshots


How to Use

  1. Install the extension from Chrome Web Store
  2. Open your submissions page: https://codeforces.me/submissions/your_handle
  3. Select tags, verdict, rating, date, etc.
  4. Click Apply
  5. View filtered problems instantly

Download

You can download the extension here:

https://chromewebstore.google.com/detail/cf-tag-filter/ehnihgbkpckfocoocnoghemdonahhnib


Use Case

  • Revise problems topic-wise
  • Track weak areas
  • Analyze your own practice
  • Explore how top competitive programmers solve problems

Links

Codeforces Profile: https://codeforces.me/profile/adarsh7203

LinkedIn Post: https://www.linkedin.com/posts/adarsh7203_codeforces-chromeextension-webdevelopment-activity-7448390181361033216-8R7g


Feedback

I would really appreciate your feedback and suggestions!

If you find this useful, please consider upvoting.

Thank you!

Full text and comments »

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