Improve-Codeforces icon indicating copy to clipboard operation
Improve-Codeforces copied to clipboard

Django web application to suggest practice problems from the areas in which the user struggles to get accepted in code forces.

Improve Codeforces Performance

This project aims to improve any CodeForces User's performances in the codeforces contests by using User's previous performance in contests as well as in the practice problem-set.

Description

This project uses Codeforces API to fetch user's Info,his/her past submissions ,etc., data and gives the weak areas (eg: math,dp,graphs,etc.) for that user.

Also it gives problem recommendation based on the weak areas and user's current rating,to improve the performance in next contest.

Getting Started

How it Works?

On the Codeforces official web page, they provide various API which we access to get data in machine-readable JSON format.That data is used for this project.

Login with the user's codeforces handle.

After submitting the handle, Details of that users and recommended problems is displayed.

Upon opening, this screen user can perform the following operation -

  • On clicking on the Future Contest, it will redirect the user to page where all future contests are listed,and also user can register for the contest.
  • User can go to the problems which are recommended and listed in the profile page to solve them.
  • User can refresh the recommended problems
  • logout

Dependencies

  • You need to have Python and Pip installed on your systems.
  • Activate the virtual environment.
  • Open the terminal and go to the folder containing requirements.txt in this project and write following line to install extra dependencies.
pip install -r requirements.txt

or

pip3 install -r requirements.txt
  • depending on your pip versions

API's Used

Executing program (How to run locally)

  • cd to the project directory
  • run the following code to start the server locally
python manage.py runserver --insecure

or

python3 manage.py runserver --insecure
  • based on your python version
  • If you get any error after running this command,solve it ,it must be because of lack of dependencies.
  • Now you can see a link like this:

terminal screen shot

  • Now type that url (http://127.0.0.1:8000/) in your Favourite browser and hit ENTER
  • You can see login page,enter your codforces Handle and click on sign-in:

login-page

  • Now you can see your profile with your information and recommended problems based on your performance.

profile

recommended-section

  • You can click on any problem to open that problem and start solving.
  • Click on the future-contest link in nav-bar to see up-coming contests woth it's details. contests
  • Login and Start Solving!

Inspiration, code snippets, etc.