Metadata-Version: 2.4
Name: rbx-cp
Version: 0.25.1
Author: Roberto Sales
License-File: LICENSE
Requires-Python: >=3.9.1
Requires-Dist: aiofiles>=24.1.0
Requires-Dist: async-lru>=2.0.5
Requires-Dist: beautifulsoup4>=4.13.4
Requires-Dist: chardet>=5.2.0
Requires-Dist: colour>=0.1.5
Requires-Dist: dateparser>=1.2.1
Requires-Dist: deepmerge>=2.0
Requires-Dist: fastapi>=0.115.8
Requires-Dist: filelock>=3.14.0
Requires-Dist: gitignore-parser>=0.1.12
Requires-Dist: gitpython>=3.1.43
Requires-Dist: iso639-lang>=2.6.1
Requires-Dist: jinja2>=3.1.4
Requires-Dist: lark>=1.2.2
Requires-Dist: latexbuild>=0.2.2
Requires-Dist: lz4>=4.4.4
Requires-Dist: mechanize>=0.4.10
Requires-Dist: more-itertools>=10.5.0
Requires-Dist: nest-asyncio>=1.6.0
Requires-Dist: openai-agents>=0.3.0
Requires-Dist: ordered-set>=4.1.0
Requires-Dist: packaging>=25.0
Requires-Dist: psutil>=7.0.0
Requires-Dist: pydantic-xml[lxml]>=2.11.0
Requires-Dist: pydantic>=2.11.7
Requires-Dist: pypandoc>=1.15
Requires-Dist: pyte>=0.8.2
Requires-Dist: python-dotenv>=1.1.1
Requires-Dist: pyyaml>=6.0.1
Requires-Dist: questionary>=2.1.0
Requires-Dist: requests>=2.32.3
Requires-Dist: rich>=13.9.4
Requires-Dist: ruamel-yaml>=0.18.14
Requires-Dist: ruyaml>=0.91.0
Requires-Dist: semver>=3.0.4
Requires-Dist: simpleeval>=1.0.3
Requires-Dist: sqlitedict>=2.1.0
Requires-Dist: syncer>=2.0.3
Requires-Dist: texsoup>=0.3.1
Requires-Dist: textual-serve>=1.1.2
Requires-Dist: textual>=8.0
Requires-Dist: throttlex>=1.0.0
Requires-Dist: typer>=0.15.1
Requires-Dist: typing-extensions>=4.14.1
Requires-Dist: uvicorn>=0.35.0
Requires-Dist: yamlfix>=1.17.0
Description-Content-Type: text/markdown

<p align="center">
	<img src="docs/rbx_white.png" alt="rbx" width="200">
</p>

<p align="center">
    <em>The go-to CLI tool for programming competitions setters.</em>
</p>
<p align="center">
	<!-- loscal repository, no metadata badges. -->
<p>
<p align="center">
	<img src="https://img.shields.io/badge/Python-3776AB.svg?style=default&logo=Python&logoColor=white" alt="Python">
	<img src="https://img.shields.io/badge/FastAPI-009688.svg?style=default&logo=FastAPI&logoColor=white" alt="FastAPI">
	<img src="https://img.shields.io/badge/JSON-000000.svg?style=default&logo=JSON&logoColor=white" alt="JSON">
</p>

<br><!-- TABLE OF CONTENTS -->
<details>
  <summary>Table of Contents</summary><br>

- [Overview](#overview)
- [Features](#features)
- [Documentation](#documentation)
- [License](#license)
</details>
<hr>

##  Overview

<!--[![Usage video]](https://github.com/rsalesc/rbx/assets/4999965/111de01e-6cbd-495e-b8c2-4293921e49b3)-->

[![GitHub license](https://img.shields.io/github/license/rsalesc/rbx.svg)](https://github.com/rsalesc/rbx/blob/master/LICENSE)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/rbx.svg)](https://pypi.python.org/pypi/rbx/)
[![PyPI version shields.io](https://img.shields.io/pypi/v/rbx.svg)](https://pypi.python.org/pypi/rbx/)

**rbx** is a CLI tool that empowers setters from the competitive programming community.

A flexible setting tool, as powerful as [Polygon](https://polygon.codeforces.com/), right on your terminal.

--- 

## Features

- 🧱 Structure: describe your problem or contest structure with the use of YAML configuration files.
- 🤖 Generation: provides a simple way to describe your whole testset, including both manually added and generated testcases.
- 🔨 Testing: provides commands for automatically running correct and incorrect solutions against the testcases of your problem, automatically judging whether the verdict was as expected or not.
- ✅ Verify: checks if your testcases and solutions are strictly conformant with the use of validators and unit tests.
- 📝 Statements: provides tooling for writing and building statements, also ensuring they're easily synchronized with your testset.
- 📤 Package: provides a single command for packaging your problems for use in your preferred judge system.

---

##  Documentation

You can read the docs [here](https://rsalesc.github.io/rbx/).

---

##  License

This project is protected under the [Apache License 2.0](http://www.apache.org/licenses/) License. For more details, refer to the [LICENSE](LICENSE) file.

---

[**Return**](#-overview)

---
