Skip to content

NikharManchanda/Yoda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📦 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

    ├── 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

Yoda 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 🥳

yoda
To use it for a particular OJ run

# yoda <platform> 
$ 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 <platform> <command>
$ yoda codeforces download  # example

You'll be prompted for providing your Codeforces handle name

> Enter your prestigious Codeforces Handle : sus #example

Codeforces Download
Atcoder Download
CodeChef Download
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 <platform> <command>
$ yoda codeforces graph  # example

You'll be prompted for providing your Codeforces handle name

> Enter your prestigious Codeforces Handle : vineet4571 #example

CodeChef Heatmap
Codeforces Heatmap
Atcoder Heatmap
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.
File Structure
File Structure

License

MIT License

About

A CLI application that downloads your AC submissions from OJ's like Atcoder, Codeforces, CodeChef and distills them into beautiful Submission HeatMap.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages