A next-generation CLI and TUI that aims to be your personal assistant for everything competitive programming related. πŸš€

Overview

Competitive Programming Tool Kit

The Competitive Programming Tool Kit (cptk for short), is a command line and terminal user interface (CLI and TUI) that aims to be your personal assistant for everything competitive programming related. Some of the main features of cptk are:

  • Supports all large CP websites, like https://codeforces.com and https://cses.fi
  • Automatically download and run example test cases
  • Manage and catalog your CP folder structure
  • Full git integration: commits and pushes solutions after you submit them
  • And much more!
Comments
  • Selenium session saving

    Selenium session saving

    Logging into the websites again and again every time can be quite annoying. To avoid it, we can:

    • Save the browser session, and load the same one every time cptk lanches.
    • Use the default session of the user, stored in
    • Store login credentials manually and automatically login for the user
    enhancement 
    opened by RealA10N 1
  • Support directory renaming

    Support directory renaming

    If the user renames the folder structure of already existing problems, cptk should be smart and create new problems with the same relative path in the new, renamed subdirectory. For example, if there is a problem from cses.fi located inside introductory-problems/trailing-zeros and the user decides to rename the directory to something like intro/trailing-zeros, other problems from the "Introductory Problems" section in the problem set should be cloned into the new intro subdirectory instead of the old introductory-problems one.

    enhancement 
    opened by RealA10N 0
  • Better unexpected error traceback

    Better unexpected error traceback

    Currently, the traceback for unexpected errors lacks information and in my option, the default python one is better. I would like to print out the default traceback (or something that is very similar to it) with an additional bold line that states that an unexpected error has occurred.

    This solution is great for Python developers and users that aren't familiar with Python:

    • Python developers that are using cptk will be familiar with the default Python traceback and will be able to figure out what is the problem if they want to.
    • Other users will see the bold statement which states that an unexpected error has occurred, and then they will be able to report the issue if they want to.

    The error message should also print some information about the current Python version, and information about the version of cptk.

    enhancement 
    opened by RealA10N 0
  • Inconsistent slash usage in windows

    Inconsistent slash usage in windows

    When using the clone subcommand the resulting path is printed with inconsistent slashes, for example:

    PS> cptk clone https://cses.fi/problemset/task/1068
    D:\Projects\tomer-cptk\cses-fi/cses-problem-set/weird-algorithm/
    
    bug 
    opened by tomergan 0
  • Use streams with `cptk test`

    Use streams with `cptk test`

    Currently, tests with large input and outputs will get loaded into memory and will take a very long time to compare. We should use the output stream to compare the output of the execution to the expected output file online

    enhancement 
    opened by RealA10N 0
  • Clone problems to a temporary directory

    Clone problems to a temporary directory

    Clone a problem into a new temporary directory. In this directory, run the preprocessor and other third-party plugin hooks, and only then copy the directory into the final destination (and raise warnings if some files are overwritten).

    enhancement 
    opened by RealA10N 0
Releases(v0.1.0a3)
Owner
Alon
17 y/o student that enjoys programming πŸ‘¨β€πŸ’»
Alon
Helping you manage your data science projects sanely.

PyDS CLI Helping you manage your data science projects sanely. Requirements Anaconda/Miniconda/Miniforge/Mambaforge (Mambaforge recommended!) git on y

Eric Ma 16 Apr 25, 2022
[WIP]An ani-cli like cli tool for movies and webseries

mov-cli A cli to browse and watch movies. Installation This project is a work in progress. However, you can try it out python git clone https://github

166 Dec 30, 2022
πŸ‘» Ghoul is an easy to use information service, allowing you to get/add information on someone or something directly from your terminal.

πŸ‘» Ghoul is an easy to use information service, allowing you to get/add information on someone or something directly from your terminal. It c

Billy 11 Nov 10, 2021
CLI/GUI Math commands based on python 3

PyMath Commands Syntax Installation Commands: pymath add: usage: pymath add 12.5 12.5 sub: usage: pymath sub 25 12.5 div: usage: pymath div 144 12 mul

eggsnham07 0 Nov 22, 2021
Command-line tool for downloading and extending the RedCaps dataset.

Command-line tool for downloading and extending the RedCaps dataset.

RedCaps dataset 33 Dec 14, 2022
A Python3 rewrite of my original PwnedConsole project from almost a decade ago

PwnedConsoleX A CLI shell for performing queries against the HaveIBeenPwned? API to gather breach information for user-supplied email addresses. | wri

1 Jul 23, 2022
A terminal tool for git. When we use git, do you feel very uncomfortable with too long commands

PIGIT A terminal tool for git. When we use git, do you feel very uncomfortable with too long commands. For example: git status --short, this project c

Zachary 1 Apr 09, 2022
A Hikari command handler for people who love ducks.

duckari A Hikari command handler made with love by ducks. Currently Duckari is work in progress. Documentation is WIP. The wiki is no longer used as d

2 Oct 09, 2022
Regis-ltmpt-auto - Program register ltmpt 2022 automatis

LTMPT Register Otomatis 2022 Program register ltmpt 2022 automatis dibuat untuk

1 Jan 13, 2022
Interactive Python interpreter for executing commands within Node.js

Python Interactive Interactive Python interpreter for executing commands within Node.js. This module provides a means of using the Python interactive

Louis Lefevre 2 Sep 21, 2022
Dynamically Generate GitHub Stats as like Terminal Interface

GitHub Stats Terminal Style Dynamically Generate GitHub Stats as like Terminal Interface Usage Create a New Repository using this Template or click he

YOGESHWARAN R 63 Jan 03, 2023
pypinfo is a simple CLI to access PyPI download statistics via Google's BigQuery.

pypinfo: View PyPI download statistics with ease. pypinfo is a simple CLI to access PyPI download statistics via Google's BigQuery. Installation pypin

Ofek Lev 351 Dec 26, 2022
🐍The nx-python plugin allows users to create a basic python application using nx commands.

🐍 NxPy: Nx Python plugin This project was generated using Nx. The nx-python plugin allows users to create a basic python application using nx command

StandUP Communications 74 Aug 31, 2022
Simple Digital Ocean CLI by python.

Simple Digital Ocean CLI by python.

Chiro 2 Jan 01, 2023
Wordle-solver - A tool that helps people who struggle with vocabulary to enjoy the famous game of WORDLE

Wordle-Solver Wordle-Solver helps people who struggle with vocabulary to enjoy t

Jason Chao 104 Dec 31, 2022
A begginer reverse shell tool python.

A begginer reverse shell tool python. Este programa Γ© para apenas estudo e conhecimento. NΓ£o use isso em outra pessoas. NΓ£o me responsabilizo por uso

Dio brando 2 Jan 05, 2022
Custom function scheduler TUI (text-based user interface) in the console

Custom function scheduler TUI (text-based user interface) in the console

Luke 1 Oct 26, 2022
Python3 parser for Apple's crash reports

pyCrashReport in intended for analyzing crash reports from Apple devices into a clearer view, without all the thread listing and loaded images, just the actual data you really need to debug the probl

7 Aug 19, 2022
WA Terminal is a CLI application that allows us to login and send message with WhatsApp with a single command.

WA Terminal is a CLI application that allows us to login and send message with WhatsApp with a single command.

Aziz Fikri 15 Apr 15, 2022
Python and data science snippets on the command line

Python Snippet Tool A tool to get Python and data science snippets at Data Science Simplified on the command line. You can read my article to learn ho

Khuyen Tran 19 Dec 21, 2022