searleser97's blog

By searleser97, 4 years ago, In English

cpbooster

Hey Codeforces,

I wanted to share with you my latest project: cpbooster which stands for "Competitive Programming Booster". It is a cross-platform CLI tool designed to boost competitive programmer's speed during contests by automating various routine tasks like testing, debugging, cloning test cases, etc. The console command suits any coding environment (i.e. VSCode, Jetbrains IDEs, Vim, NeoVim, Emacs, Geany, Sublime Text, ...) and it’s very easy to use. Vim users can install cpbooster.vim plugin to boost their speed even more. I hope you like it!!.

Visit the official website for installation and setup instructions.

https://searleser97.github.io/cpbooster/

Don't forget to give it a star in github if you like it :D https://github.com/searleser97/cpbooster

Using NeoVim:

Features

  1. cpbooster comes with a short alias command called cpb to avoid writing the long command each time
  2. Automatically clone sample test cases files with corresponding source code files with template loaded into the desired directory
  3. Test your code against sample test cases quickly. Supported Results:
    • AC (Accepted)
    • WA (Wrong Answer) Shows differences between accepted output and your output beautifully
    • TLE (Time Limit Exceeded)
    • RTE (Runtime Error)
    • CE (Compilation Error)
  4. Run code with your own debugging flags easily

  5. Submit your code from the terminal really quickly. (Several Online Judges can be supported)
  6. open your preferred editor in the contest directory immediately after cloning it. See Editors
  7. Create one or multiple source files with the corresponding template loaded

  8. Vim plugin cpbooster.vim boosts your speed even more

  9. Flat File Structure. See Why Flat File Structure

Please submit bugs right in the github site for cpbooster: https://github.com/searleser97/cpbooster/issues

  • Vote: I like it
  • +60
  • Vote: I do not like it

| Write comment?
»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Perfect stuff!...

»
4 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Amazing Work, Buddy! Just Curious, Which OS you are using (in Tutorial GIF)

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

How to use it inside or with VSCode ? Can you guide me in an elaborative way? through node.js command prompt it is working fine but inside VS code no!

»
3 years ago, # |
  Vote: I like it +1 Vote: I do not like it

Support for a great variety of compiled and interpreted languages has been added :D like: go, rust, javascript, ruby, ...

»
3 years ago, # |
  Vote: I like it +1 Vote: I do not like it

Right now when I try to do "cpb clone", A_Name.cpp file gets created instead of A.Name.cpp. How can I change this? Also, How can I change the language for submission? I want to change it from C++17 to C++17(64).

»
3 years ago, # |
  Vote: I like it +3 Vote: I do not like it

You can now see the test case input while testing and clone test cases into you current directory instead of the "contests directory", both are opt-in features in v2.6.0

»
3 years ago, # |
Rev. 2   Vote: I like it +1 Vote: I do not like it

Actually, it is an excellent program!! And it could be used for many other interesting things (like a Local Judge or an automatic unit tester for software development). However, nothing is perfect, and I have some suggestion to make the tool better:

-Create a configuration assistant (no GUI needed, a CLI one is enough)

-Clarify better how to create the config file in the documentation, specifically stating that the user must create the folder and where to do it.

-Shorten problem names in the source files for improving speed in live contests. For example, instead of "AWatermelon.cpp" it'd be much better to have "A.cpp" as the name.

-Make other optimizations to make it better for live contests.

Hope it helps, and a big psychological hug from Chile :-)

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hey.

Thanks for great tool. For some reason specifying url after filePath does not work for me

$ cpb s main/src/main.rs "https://mirror.codeforces.com/contest/1616/problem/H"

Submit a source code file as a solution to a problem in an Online Judge     
(i.e. Codeforces, AtCoder, ...).

Usage: index.js submit <filePath> [url]

Options:
  --version, -v  Show version number                               [boolean]
  --help, -h     Show help                                         [boolean]
  --configPath   Path to JSON configuration file
                 [default: "C:\Users\egor\cpbooster-config.json"]   [string]

Unknown argument: https://mirror.codeforces.com/contest/1616/problem/H

At the same time comment in code does work

  • »
    »
    3 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Interesting, does this error is still happening? Could you submit an issue in Github please?

»
5 weeks ago, # |
  Vote: I like it 0 Vote: I do not like it

I am having difficulties submitting as whenever I run cpb s myfile.cpp it used to launch chromium then i changed in json file where I marked usedefaultbrowser = true. It still launches Chromium and doesnt connect to my default browser i.e firefox

»
5 weeks ago, # |
  Vote: I like it 0 Vote: I do not like it

ylandolsi@ylandolsi:~$$$ sudo install cpbooster -g install: option requires an argument -- 'g' Try 'install --help' for more information. ylandolsi@ylandolsi:~$$$ sudo install cpbooster install: missing destination file operand after 'cpbooster' Try 'install --help' for more information. ylandolsi@ylandolsi:~$ yarn install cpbooster -g Command 'yarn' not found, but can be installed with: sudo apt install cmdtest

how to install it on ubuntu ?