You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+55-35Lines changed: 55 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,59 +1,81 @@
1
-
# ReCodEx Client
1
+
# ReCodEx CLI Client
2
2
3
-
A command-line interface for the [ReCodEx](https://recodex.mff.cuni.cz/) system. This tool allows users to interact with ReCodEx from their terminal, streamlining workflows and enabling scripting possibilities.
3
+
A command-line interface for the [ReCodEx](https://github.com/ReCodEx) system. This tool allows users to interact with ReCodEx from their terminal, streamlining workflows and enabling scripting possibilities. The aim is not to create a terminal-based replacement for web application, but rather an intermediate layer for bash scripts or other automation tools.
4
4
5
-
## What is ReCodEx?
5
+
This tool is built on top of the [recodex-pylib](https://github.com/ReCodEx/pylib) Python library, which provides a wrapper for ReCodEx API generated from OpenAPI (swagger) specification.
6
6
7
-
ReCodEx is a system for dynamic analysis and evaluation of programming exercises. It allows supervisors to assign programming problems to students, who can then submit their solutions through a web interface. ReCodEx automatically evaluates these solutions by compiling and executing them in a safe environment, providing quick feedback to students.
8
7
9
8
## Key Features
10
9
11
-
***Authentication:** Securely log in to your ReCodEx account. The CLI will securely store your access token for future sessions.
12
-
***Execute Requests:** Send requests and view responses from the command line.
10
+
***Authentication:** Securely log in to your ReCodEx account. The CLI will securely store your access token for future sessions. The session is shared with the `recodex-pylib` library, so you can use it in conjunction with your Python scripts.
11
+
***Execute Requests:** Send API requests and view responses from the command line.
13
12
***Interactive Mode:** You can use the interactive mode to browse and use existing endpoints.
14
13
***Plugins:** Use existing plugins or write your own to streamline your work.
15
14
15
+
16
16
## Installation
17
17
18
18
The recommended way to install the ReCodEx CLI is via `pip`. Python 3.11 is recommended, but other versions may also work:
Let us note that the JWT token (either provided or obtained after credentials verification) is stored in a configuration file in your home directory (usually `~/.local/share/recodex/context.yaml`).
52
74
53
75
- **Explore Commands:** You can view the full list of available commands and options by running:
54
76
55
77
```bash
56
-
python3 -m recodex_cli --help
78
+
recodex --help
57
79
```
58
80
59
81
## Usage
@@ -66,32 +88,35 @@ The client defines the `call` command, which can be used to call any endpoint.
66
88
67
89
68
90
```bash
69
-
python3 -m recodex_cli call
91
+
recodex call
70
92
```
71
93
72
94
- **Calling an Endpoint:** To call an endpoint, add an argument in the `presenter.action` format, followed by any request parameters.
0 commit comments