https://github.com/p-maker/pmaker
Toolkit for creating problems for programming competitions
https://github.com/p-maker/pmaker
competitive-programming pmaker problem-setting problemmaker
Last synced: 9 days ago
JSON representation
Toolkit for creating problems for programming competitions
- Host: GitHub
- URL: https://github.com/p-maker/pmaker
- Owner: p-maker
- License: mit
- Created: 2018-04-21T14:07:00.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2021-03-07T14:39:00.000Z (about 5 years ago)
- Last Synced: 2026-01-03T06:12:01.604Z (3 months ago)
- Topics: competitive-programming, pmaker, problem-setting, problemmaker
- Language: Python
- Homepage:
- Size: 93.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE.txt
Awesome Lists containing this project
README
======
pmaker
======
pmaker is a toolkit for creating programming contests.
Dependencies:
-------------
(Or skip and it will be installed from pypi)
.. code:: bash
apt install python3-setuptools{,-scm} python3-jinja2
Install the pmaker:
-------------------
Clone the repo and then
.. code:: bash
./setup.py install
Tip: You may also use "--user" option for non-privilged install.
Note that this way you will probably need to copy/symlink runnable file from ~/.local/bin to your PATH.
Install the sandbox
--------------------
.. code:: bash
[sudo] apt install libcap-dev
git clone http://github.com/ioi/isolate
make
[sudo] make install
For more information please refer to the isolate's official documentation
User guide (short)
-------------------
Following commands are provided
.. code:: bash
pmaker tests # generates all the tests for the problem in current directory
pmaker invoke # invokes the specified solutions, use localhost:8128 to see the results
pmaker invoke @all # convenience macro
pmaker testview # shows all the tests, in browser
pmaker invocation-list # to view previous invokations
pmaker run solution # interactively runs named solution without sandboxing (convenience function)
Example problem
----------------
.. code:: bash
git clone https://github.com/p-maker/problem-aplusb
Install completion (optional)
-----------------------------
Completions are provided for bash and located under "completion" folder.
To install bash completion helper copy it to the directory like "/etc/bash_completion.d".
Exact directory name may depend on your Distribution
zsh completion is under development