π¦
Yoda
β
Yoda A CLI that takes away the hassle of managing your submission files on different online-judges by automating the entire process of collecting and organizing your code submissions in one single Directory on your Machine also it distils User Submissions into beautiful Submission HeatMap.
Highlights
-
Downloads your AC solutions from CodeForces,CodeChef and Atcoder and creates a Directory within your Home Directory with the following File Structure:
βββ Contests ββCodeforces βββ<Handle-Name> βββ<Contest-ID> βββ <problem-index> βββ<tourist> βββ 592 βββ A.cpp βββCodeChef βββ<Handle-Name> βββ <Contest-Name> βββ <problem-name> βββ<problem> βββ<tourist> βββ AUG20B βββCHEFWED βββCHEFWED.cpp βββAtCoder βββ<Handle-Name> βββ <Contest-Name> βββ <problem-level> βββ<tourist> βββ AtCoder Beginner Contest 230 βββ A.cpp
-
Supports both Linux and Windows , see Releases.
-
Fully automated collection of all yours submissions with minimal effort setup
-
Simple and easy and pleasing interface to use interface to get you started in minutes
-
Extensive traceability for your submissions for Each OJ , Contest Name , Problem Name with the problem file stored with proper language extension.
-
Provides Clear and Beautiful Submission Heatmap of your Accepted Solutions for each Online Judge for all three OJ's (FunFact: Atcoder and Codechef doesn't provide you the Submission Heatmap themselves but Yoda does it all
π ).
Platforms
Harwest currently has extensive support for the following platforms:
While integration with various other OJs are still in the kitchen , your Contributions are always welcomed
Installation
1.) You will require Python 3.5+
along with pip3
in order to be able to install and use Yoda. Refer to the documentation for installing pip
on windows, ubuntu/linux
2.) Install this Github Repository and then enter into that directory in the terminal/command prompt then paste the follwing command:
$ pip install -e .
Getting Started
After installing the package, run the following command in the terminal:
$ yoda
You'd be greeted with something like this:
nm@pop-os:~$ yoda
...:βββββββββββββββββββββββββββββββββ:...
...:βββββββββββββββββββββββββββββββββ:...
...:βββββββββββββββββββββββββββββββββ:...
...:βββββββββββββββββββββββββββββββββ:...
...:βββββββββββββββββββββββββββββββββ:...
...:βββββββββββββββββββββββββββββββββ:...
Hey there! π Looks like you're using Yoda for the first time. Let's get you started π
There are three differnet OJ's from which you can get your User Statistics:
Atcoder
CodeForces
CodeChef
For each one of the OJ's you can Download all your AC solutions β
as well as get your Submission Heatmap!!
π₯³ You rock! We're good to go now π₯³
To use it for a particular OJ run
# yoda
$ yoda codeforces
$ yoda atcoder
$ yoda codechef
Now comes the main part :
1.)To harvest your submissions from the Codeforces platform.
Type the following command:
# yoda
$ yoda codeforces download # example
You'll be prompted for providing your Codeforces handle name
> Enter your prestigious Codeforces Handle : sus #example
Yoda will then start scraping all your AC submissions, starting from most recent submission till your very first submission.
2.) Get your Submisssion HeatMap:
Type the following command:
# yoda
$ yoda codeforces graph # example
You'll be prompted for providing your Codeforces handle name
> Enter your prestigious Codeforces Handle : vineet4571 #example
Yoda will then output on a new window your Submission HeatMap !!.
Final Directory Look
The Directory then is created after downloading your solution for each OJ and is divided by different handles which is further divided to Contest Dir. then your Problem Solution finally.