A Flutter desktop app that saves details about a problem you solved on Codeforces or CSES to Google Sheets.
Key Features • How To Use • Download • Credits • License
- 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 '...')
-
Download and open the installer exe file from here
-
Install the app:
- Copy this training sheet to your own Google drive (AND DON'T MODIFY THE HEADER ROW (row 1)):
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"
- Copy the new sheet's ID:
- Watch this video to create a Google service account:
- 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:
Note: You will do this step only when you open the app for the first time. After that, you'll just do step 7.
v2.0 Note: You can now choose different worksheets other than "External" when submitting a problem
- Use the app to track details while solving the problem:
- Submit and check your Google Sheet's spreadsheet:
- Don't forget to press 'x' when the problem is added to sheets!!!:
- Keep tracking different problems and repeating steps 7 to 9 :]
Implementation note about using web scraping on first submission page only:
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
- 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)
Amazing resources that helped me:
- Dr. Mostafa Saad with his training sheet
- Johannes Milke
- How to create Flutter .exe for Windows by Paras Jain
- mp3quran_scraper_and_tagEditor - A data scraping app that fetches mp3 metadata
MIT
:] 🙌