Skip to main content

A package to get all you need to start a programming contest as fast as possible

Project description

CFaster

CFaster is a tool to easily set all you need to start a contest problem as fast as possible.

Get CFaster

If you want to install CFaster all you need is pip for Python 3 and running

pip install cfaster

Usage

Usage: cfaster [OPTIONS] COMMAND [ARGS]...

Options:
  -v, --verbose  Output INFO level logs.
  -d, --debug    Output DEBUG level logs.
  --help         Show this message and exit.

Commands:
  scrape  Scrapes the problem and saves inputs and outputs.

Example

This command will scrape the problem from the link and get all the inputs and outputs in .txt files.

cfaster scrape https://codeforces.com/contest/1174/problem/A

In the future we will have a cfaster test command for running your code, testing the inputs, comparing with the outputs and giving you the results.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

For the default isolated development environment used by the maintainers you will need:

If you prefer not using Docker feel free to use any other you prefer, but the CI integration will be running with Docker images so this is the best way to replicate the production environment.

Installing

This project uses Docker for creating the isolated development environment.

You can run the Dockerfile build and run the container manually with

docker build -t cfaster .
docker run -it --rm -v $(pwd):/cfaster cfaster bash

or you can use Make and docker-compose to easily get everything running

make dev 

Reading the Makefile shows what each target does.

Using

You will have two options on how to execute from source code

python -m cfaster

or

python setup.py install
cfaster

Running the tests

Automated tests

The tests for the CFaster are yet to be implemented, the software still in early alpha version.

Coding style tests

CFaster uses PEP8, for running a verification if your code is according to the rules use pycodestyle . which will recursively run through all files and find any mistakes.

For fixing them automatically we use autopep8

autopep8 -r --diff . # this will show the diff after the fixing
autopep8 -r --in-place . # and this will fix in place the files

We recommend always checking the diff first.

Deployment

For now we don't have a deployment pipeline, but in the future it will be automated using CI and CD deploying the package to pypi.

Built With

Contributing

If you want to contribute to the project please read CONTRIBUTING

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

  • Vitor Falcão - Starter and main maintainer - vitorfhc

As soon as we get out first contribution we will start the file with contributors.

License

This project is licensed under the GPL-3.0 - see the LICENSE.md file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cfaster-0.0.2.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

cfaster-0.0.2-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file cfaster-0.0.2.tar.gz.

File metadata

  • Download URL: cfaster-0.0.2.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for cfaster-0.0.2.tar.gz
Algorithm Hash digest
SHA256 afe8316d6611cb1a8561243d7ab3ccbac1acd2484d4841ae694b6201be0ea793
MD5 703ef2d48544eac7087399081c4124d4
BLAKE2b-256 2c47261ef3bf546bb654d029278fafb5dd7b33cef83bf936581499bab179eea1

See more details on using hashes here.

File details

Details for the file cfaster-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: cfaster-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 18.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for cfaster-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 27dd6c64d1172458fd095a6f8089d9a83d500fd46f5fe3def285e29ee58cef1f
MD5 48b8e792a3329a45647f43d37cee045c
BLAKE2b-256 d62a519b06752bc5a1cb107dcb2686627a4f1f5bd0b605923ca3dfe7a8d8e0d1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page