CF Elite Tracker
TopExploreDivisionsLearnPracticeUser solvedHelp
HelpLog inSign up

Help

How CF Elite Tracker works

This page explains every main area of the app. All problem links open

On this page

  1. Overview
  2. Home & account
  3. Dashboard
  4. Settings
  5. Top
  6. Explore
  7. Divisions
  8. Learn
  9. Practice
  10. User solved
  11. My progress
  12. Codeforces & your data

Overview

CF Elite Tracker uses the public Codeforces API to browse problems, leaderboards, and (when you sign in) to save a Codeforces handle, follow other users, and mark problems you have solved. Highlights for “you already solved this” combine your handle’s submissions (when set) and rows you saved in the app.

Home & account

  • Home — landing blurb. If you are signed in, you are usually sent to the dashboard.
  • Sign up and Log in use email and password (Supabase Auth).
  • When logged in, use Sign out in the header to end the session.

Dashboard

Dashboard (signed in) shows all accepted problems for a programmer you follow, merged with the global problem set for rating and quality (how many people solved it on CF).

  • Programmer — dropdown lists every handle you added under Settings → Follow. Picking one reloads the list for that person. The URL can include ?follow=Handle so you can bookmark a specific view. First load for a new handle can take a while; the app caches results so switching back is faster.
  • Rating category — filter to one 200-point band, or All categories to open collapsible groups by band.
  • Mark solved — saves a row to your account (see My progress). Rows can show a green highlight if they match your CF handle or your saved solves.
  • While a new catalog is loading, you may see a short loading state or skeleton after you change the programmer.

Settings

Settings (signed in):

  • Codeforces handle — optional; must be a real user on Codeforces. Used in the UI and for matching your solved problems to highlights. Saving hits the Codeforces API to check the name.
  • Follow a top contestant — add one or more handles. The dashboard catalog can switch between them; the order is the order you added them (oldest first). Remove someone with the remove action next to their name.

Top

Top is the global rated Codeforces leaderboard (paginate and filter by country or organization substring). Use it to spot handles and follow them in Settings. List data is cached for about an hour.

  • Click a handle to open per-solver stats at /top/Handle: rating-change and submission heatmaps (by UTC day), bar charts of unique solves by problem rating and by tag, and a short table of recent rated rounds.
  • For a full list of accepted problems with min/max problem rating, sort order, pagination, and a topic (tag) filter, open User solved (/solved/Handle). The topic dropdown lists tags that appear on that user’s solved set; leave it on Any to show everything. See User solved below for the full list of query parameters (including topic).

Explore

Explore filters the global problem set by tag (substring), min/max problem rating, and paginates. Apply the form to refresh the list. When signed in, use Mark solved to record a problem. Green highlights use your handle + saved solves.

Divisions

Divisions groups official rounds by Codeforces “Div. 1 / 2 / 3 / 4” style titles. Rounds are listed under every division that matches their name (for example, a Div. 1 + Div. 2 round appears in both). Contests with no Div. n in the title are omitted.

Use the division tabs to show one bucket at a time: its recent contests and a standings-based problem list for the rounds on the current table page. Each division card shows a short description, a suggested problem rating range (a rough guide, not from the API), and shortcuts to Explore and Practice with that band (pre-filled filters).

  • URL: ?division=div1 through div4 (default div2). Table pagination: page=2, and n=… for how many rounds appear per page.
  • Contest data is cached (about an hour on the server); the standings grid loads on demand.

Learn

Learn has two ideas:

  • A curated path (Newbie → Grandmaster milestones) with high quality problems per band (by global accept count in the problem set).
  • Top programmer sections show what well-known solvers and your followed solvers have done, grouped by problem rating — good for ideas when you are logged in and have followed someone.

Practice

Practice is topic-first: choose one exact Codeforces tag, narrow by rating, sort by difficulty or by popularity, and paginate. You must select a tag to see results. Mark solved when logged in like on Explore.

User solved

User solved — enter any Codeforces handle to see their unique accepted problems (from their submissions), merged with the global problem set for ratings and tags. On the result page you can filter by min/max problem rating, choose a topic (tag) (exact Codeforces tag from a dropdown built from that user’s solved problems), set sort order (e.g. latest or earliest accept), and paginate. Rating and topic filters work together (both must match). Handles are case-sensitive like on Codeforces.

URL: optional topic (e.g. ?topic=dp, or topic=binary%20search) together with min, max, order, page, and perPage. Pagination and “Apply” preserve the topic selection.

My progress

My progress lists problems you marked from Explore (and similar) with your tags and rating snapshot. You can Remove a row to delete only that saved entry (it does not change Codeforces). Re-mark a problem to refresh stored metadata.

Codeforces & your data

  • API calls are subject to Codeforces rate limits; do not run many tabs refreshing heavy pages at once.
  • Supabase stores your account, profile, follow
  • Problem ratings and tags come from the official problem set; very new problems may be missing or unrated in the list.