The cool Codeforces CLI
Project description
CFCC (CodeForces Cool CLI)
You want to do codeforces, but you are scared to leave your amazing terminal??? Don't worry, because with this CLI you could achieve your dreams^.
^You need to still login into codeforces with your browser, upsis.
How to install
Nobody likes repo install, but it is too green for pip sooooorry
To install it, first start by cloning the repo:
git clone https://github.com/ThorTuwy/cfcc
Now, assuming that you have installed UV (I didn't mention before, to give you a sunken cost fallacy because I am a bad person :P ), run this command:
uv tool install .
And now you NEED to enjoy using this CLI thing.
WARNING: Configs are generated after running your first command, so do that pls.
Features 😎
It isn't an AI emoji pls trust me
- Download problems using
cfcc problem ID/URL - Download entire contest using
cfcc contest ID/URL - Read your problems in tour beautiful terminal using:
cfcc read - Test your solutions with
cfcc test - Submit your solutions with
cfcc submit - See your submission in realtime with
cfcc submissions - AND change the configuration using a simply TOML
HOME/.config/cfcc/
General idea
Zzz text for Zzz mans
The main idea of this project is provide a CLI app in which you can (mostly) forget about the stupid browser and focus simply on your terminal to reduce mental noise, in part with that, the commands need to be stupidly easy to use, so is not need it to be thinking what you should do, and also I don't want and BIG dependency on the project as is a little lame ngl.
For that I decided on this way of working: This CLI is path-aware, so the
idea is that when you download a contest/problem, when you are inside a problem
folder, you are going to be able to use commands as cfcc read or cfcc submit
without having to put paths or things like that. Also, instead of getting the cookies
via a headless browser or some shit like that (Because Cloudflare protections are not possible
to simply log in with plain request), I simply scrap the cookies of your current
browser (Thx to browser_cookie3).
PROBLEMS!?!?!
In my project??? I am perfect^ so impossible that is my fault
If you need your favourite feature to be implemented or help fixing that annoying bug, simply open your own issue or PR (But know that you may or may not read it :P)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cfcc-0.1.1.tar.gz.
File metadata
- Download URL: cfcc-0.1.1.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dafc03413477460365ece3d52268233935f352fbbca3a002c9471630b25ba2f3
|
|
| MD5 |
1f9202920458c294cd43337575b95fdf
|
|
| BLAKE2b-256 |
1cd3b234860430406f2a5a0ca39cd817ac07b0ae26ea8d4cfbe7ef276b74b924
|
File details
Details for the file cfcc-0.1.1-py3-none-any.whl.
File metadata
- Download URL: cfcc-0.1.1-py3-none-any.whl
- Upload date:
- Size: 19.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dddf9f758f045ca73f941b35dd299efda74a5f7203d33346ab0950484d9ff09d
|
|
| MD5 |
867cd1eb4d1876ee3c3138b996a0b9b1
|
|
| BLAKE2b-256 |
03955cdadbfd747fd03b855938e42c7e303ff68ce39fe0c399f895f93d9fedbd
|