Skip to main content

Submit your work to JOJ via cli.

Project description


Submit your work to JOJ via CLI. Greatly improve your efficiency when uploading to JOJ.

Getting Started

Setup venv (Optional)

python3 -m venv env
source env/Scripts/activate


$ pip install joj-submitter
$ joj-submit --help
                  a|py|py3|octave|php|rs|hs|js|go|rb|other] [SID]

  PROBLEM_URL                     [required]
  COMPRESSED_FILE_PATH            [required]
                                  other: other | c: C | cc: C++ | llvm-c: C
                                  (Clang, with memory check) | llvm-cc: C++
                                  (Clang++, with memory check) | cmake: CMake
                                  | make: GNU Make | ocaml: OCaml | matlab:
                                  MATLAB | cs: C# | pas: Pascal | java: Java |
                                  py: Python | py3: Python 3 | octave: Octave
                                  | php: PHP | rs: Rust | hs: Haskell | js:
                                  JavaScript | go: Go | rb: Ruby  [required]

  [SID]                           [env var: JOJ_SID;default: <EMPTY>]

  -s, --skip  Return immediately once uploaded.  [default: False]
  -a, --all     Show detail of all cases, even accepted.  [default: False]
  -d, --detail  Show stderr, Your answer and JOJ answer section.  [default: False]
  -j, --json    Print the result in json format to stdout.  [default: False]
  --version   Show version.
  --help      Show this message and exit.


First get your JOJ_SID with or via browser on your own.

Replace <YOUR_JOJ_SID> in the following methods with your actual SID.

Method 1 Call directly via CLI

  1. Mark JOJ_SID shell variable.
  2. Run joj-submit with arguments.
$ joj-submit -w cc upload succeed, record url
status: Accepted, accept number: 49, score: 980, total time: 6167 ms, peak memory: 33.684 MiB

Method 2 Call from Makefile

  1. Add export JOJ_SID=<YOUR_JOJ_SID> to your ~/.bashrc or ~/.zshrc. Do not forget to restart the shell to load the variable.
  2. Edit and add this Makefile to your project
  3. Run make joj.
$ make joj
tar -cvzf p4-src.tar.gz main.cpp
joj-submit p4-src.tar.gz cc -w
p4-src.tar.gz upload succeed, record url
status: Accepted, accept number: 49, score: 980, total time: 6167 ms, peak memory: 33.684 MiB


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

joj-submitter-0.0.4.tar.gz (9.2 kB view hashes)

Uploaded source

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