Skip to content

A Flutter desktop app that saves details about a problem you solved on Codeforces or CSES to Google Sheets.

Notifications You must be signed in to change notification settings

OdyAsh/problem_tracker

Repository files navigation


cf_icon
problem_tracker

A Flutter desktop app that saves details about a problem you solved on Codeforces or CSES to Google Sheets.

Key FeaturesHow To UseDownloadCreditsLicense

Key Features

  • Multiple stop watchers to track each phase of problem-solving (reading, thinking, etc)
  • Automating details like entering a hyperlink to solution code, problem code, and writing today's date in the comment field of google sheets
  • Time-saver when solving in a competition (even though the problem will initially be saved as '...')

How To Use

  1. Download and open the installer exe file from here

  2. Install the app:

screenshot

  1. Copy this training sheet to your own Google drive (AND DON'T MODIFY THE HEADER ROW (row 1)):

screenshot

Optional: I suggest you check out the "Info" worksheet of the training sheet or watch this video by Dr. Mostafa to understand how to use the sheet for worksheets other than "External"

  1. Copy the new sheet's ID:

screenshot

  1. Watch this video to create a Google service account:

screenshot

  1. Paste the obtained credentials (step 5), google sheet's id (step 4), the name of the worksheet ("External"), and your CodeForces handle (username) to the app:

screenshot

Note: You will do this step only when you open the app for the first time. After that, you'll just do step 7.

  1. choose a problem using code and difficulty level: screenshot

Note: screenshot

v2.0 Note: You can now choose different worksheets other than "External" when submitting a problem

  1. Use the app to track details while solving the problem:

screenshot

screenshot

  1. Submit and check your Google Sheet's spreadsheet:

screenshot

  1. Don't forget to press 'x' when the problem is added to sheets!!!:

screenshot

  1. Keep tracking different problems and repeating steps 7 to 9 :]

Implementation note about using web scraping on first submission page only: screenshot

Download

Follow steps 1 to 3 mentioned above :]

In addition, if you want this app to run on linux or mac, clone the project, and type in the command prompt (in vs code):

flutter build linux

for Mac:

flutter build macos

Then you will find the executable file here: build/LINUX (or MACOS)/runner/release

"To-Do"s

  • Make the app a little wider when it starts
  • Make the app display "problem_tracker" instead of "cf_tracker" when it initially starts
  • Be able to add submission link of CSES problem to google sheets
  • Be able to add tutorial link that was present in google sheets as a =HYPERLINK(...) instead of just text, and move it to "Resources" column
  • Make the app available on Android
  • Update readme.md's gifs to match new update (possibly upload a youtube video as a demonstration instead)

Credits

Amazing resources that helped me:

You may also like...

License

MIT


:] 🙌

About

A Flutter desktop app that saves details about a problem you solved on Codeforces or CSES to Google Sheets.

Resources

Stars

Watchers

Forks

Packages

No packages published