Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kid-116/lucy
lucy - A CLI companion for CP.
https://github.com/kid-116/lucy
atcoder cli cp pypi
Last synced: 3 months ago
JSON representation
lucy - A CLI companion for CP.
- Host: GitHub
- URL: https://github.com/kid-116/lucy
- Owner: kid-116
- Created: 2022-07-01T06:47:36.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-08T07:42:56.000Z (7 months ago)
- Last Synced: 2024-07-09T15:52:51.204Z (6 months ago)
- Topics: atcoder, cli, cp, pypi
- Language: C++
- Homepage: https://pypi.org/project/lucy01
- Size: 417 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[![Lint](https://github.com/kid-116/Lucy/actions/workflows/pylint.yml/badge.svg)](https://github.com/kid-116/Lucy/actions/workflows/pylint.yml)
[![Test](https://github.com/kid-116/Lucy/actions/workflows/pytest.yml/badge.svg)](https://github.com/kid-116/Lucy/actions/workflows/pytest.yml)
[![Publish PyPI](https://github.com/kid-116/Lucy/actions/workflows/publish.yml/badge.svg)](https://github.com/kid-116/Lucy/actions/workflows/publish.yml)
[![GitHub Release](https://github.com/kid-116/Lucy/actions/workflows/gh-release.yml/badge.svg)](https://github.com/kid-116/Lucy/actions/workflows/gh-release.yml)# Lucy
Lucy, a CLI companion for competitive programming on AtCoder and Codeforces, frees you from tedious
tasks. It automatically fetches sample tests, sets up directories, and lets you test your code with
just a few commands, streamlining your workflow and letting you focus on writing brilliant
solutions.[Demo](https://github.com/kid-116/Lucy/assets/75692643/1b7195f7-fcd3-4e05-b23e-48061f6ef1b1)
## Supported Languages
- [x] C++
- [ ] Python## Supported Platforms
- [x] AtCoder
- [ ] Codeforces## Featues
- [x] Fetch Sample Test Cases
- [x] Fetch Hidden Test Cases (after the contest ðĪŠ)
- [x] Test Solution
- [x] Setup Snippets
- [x] Submit Solution
- [x] ACL Support
- [ ] What else? ðĪ## Installation
```
pip install lucy01
```## Environment Variables
- `LUCY_HOME`Specify home directory for `lucy`.
## Configuration
Lucy supports the following configuration options which can be accessed using the `config` command
group:- `AtCoder.UserId`, `AtCoder.Password`
AtCoder login credentials. Required to perform tasks which require signing in such as setting up
an **ongoing** contest.- `NThreads`
Default threads of execution to be used when setting up a contest. `4` seems to be a good
choice.## Getting Started
1. Set the environment variable `$LUCY_HOME` as preferred. By default, it uses the `~/.lucy`.
2. Get help!
```
lucy --help
```
Check out the [documentation](https://lucy01.readthedocs.io/en/latest/).## Directory Structure
```
$LUCY_HOME
âââ .vscode
â âââ cp.code-snippets*
âââ AtCoder
â âââ {ARC177}
â âââ{A}
â â âââ main
â â âââ tests
â â â âââ in
â â â â âââ {00.txt}
â â â â âââ ...
â â â âââ out
â â â âââ {00.txt}
â â â âââ ...
â â âââ main.cpp
â âââ...
âââ Codeforces
âââ common*
âââ base.cpp*
âââ structures
â âââ grid.cpp
â âââ ...
âââ ...
```- Lucy organizes your competitive programming workspace with a clear directory structure. Besides folders for specific contests and their solutions with `tests`, a key element is the `common` directory. This folder stores reusable code snippets `(*.cpp)`. These snippets can be easily inserted into your solution files using filename prefixes thanks to the `cp.code-snippets` file in the `.vscode` folder. This file, automatically generated with `lucy update-snippets`, facilitates code completion within Visual Studio Code.
[Using Snippets](https://github.com/kid-116/Lucy/assets/75692643/4b747b59-9736-4185-a6ee-9aa1fc843e92)