Git Product home page Git Product logo

getsubmissions2.0's Introduction

getSubmissions2.0

App to get the source code of your submissions with verdict Accepted from Codeforces

To install

# npm install -g get-submissions

To use

$ get-submissions -h <handle> -c <count> -d <directory>

<handle>: Valid handle from codeforces.com
<count>:  Searching for Accepted in the last N submissions, "infinite" by default
<directory>: The path for the directory where submissions will be saved, './' by default

Examples:
  // Gets all Accepted submissions and saves it in './' (current directory)
  - get-submissions -h tourist

  // Gets all Accepted submissions from the last 20 submissions and saves it in './'
  - get-submissions -h tourist -c 20

  // Gets all Accepted submissions and saves it in './codeforces' folder.
  - get-submissions -h tourist -d codeforces

This could be take a while (depending of the amount of submissions).

Directory structure after download

The structure of folders is something like:

<directory>
            /Codeforces Beta Round #1/
                                    A.cpp
            /Codeforces Beta Round #16 (Div. 2 Only)
                                                    /A.cpp
                                                    /B.cpp
                                                    /C.cpp
                                                    /D.cpp
            / ...

Complete example: link

Example of code downloaded: (In the head of file is added a link for the problem) C.cpp

Storage

data.db: File to storage downloaded submissions

How to add support for a new language

In index.js there are two variables extension and comment, to add new language is necessary to add the extension of language and line for comment.

Example: how to add Ada language

Add in the final the pair key value for extension and comment respectively.

var extension = {'GNU C++': 'cpp', 'GNU C': 'c' ,'Java': 'java', 'Haskell': 'hs',
  'Pascal':'p', 'Perl': 'pl', 'PHP': 'php', 'Python': 'py', 'JavaScript': 'js', 'Ada': 'adb'};

var comment = {'GNU C++': '//','GNU C': '//' ,'Java': '//', 'Haskell': '--',
  'Pascal': '//', 'Perl': '#', 'PHP': '//', 'Python': '#', 'JavaScript': '//', 'Ada': '--'};

getsubmissions2.0's People

Contributors

jhonber avatar pin3da avatar

Watchers

 avatar  avatar

Forkers

jubayerjoy

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.