{"id":17239874,"url":"https://github.com/pbui/dredd","last_synced_at":"2025-04-14T03:12:20.405Z","repository":{"id":45932371,"uuid":"151084968","full_name":"pbui/dredd","owner":"pbui","description":"Judge and Executioner","archived":false,"fork":false,"pushed_at":"2023-08-27T22:52:50.000Z","size":79,"stargazers_count":6,"open_issues_count":4,"forks_count":9,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-14T03:12:15.729Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pbui.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-10-01T12:27:35.000Z","updated_at":"2023-01-18T12:34:03.000Z","dependencies_parsed_at":"2023-02-09T03:31:38.214Z","dependency_job_id":null,"html_url":"https://github.com/pbui/dredd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pbui%2Fdredd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pbui%2Fdredd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pbui%2Fdredd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pbui%2Fdredd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pbui","download_url":"https://codeload.github.com/pbui/dredd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248813797,"owners_count":21165634,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest"],"created_at":"2024-10-15T05:49:58.766Z","updated_at":"2025-04-14T03:12:20.383Z","avatar_url":"https://github.com/pbui.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dredd\n\nAutomated quiz and code grader.\n\n# Running Dredd\n\nTo run `dredd`, you can do the following:\n\n    $ python3 dredd --logging=debug\n    \nThis will start the dredd server with debug level logging.\n\n# Docker Containers\n\nInternally, `dredd` uses docker to execute submitted code in an isolated\ncontainer.  The precise docker image is defined in the `scripts/sandbox.sh`\nscript (ie. `IMAGE`).\n\nProvided in this repository are two `Dockerfiles`:\n\n- `Dockerfile.submit`: This provides an example of a simple docker container\n  that can be used to submit quizzes and code to `dredd`.\n    \n- `Dockerfile.code`: This provides an example of a simple docker container that\n  will be used to execute code in isolation.  As such, it should contain the\n  interpreters and compilers required by `dredd` and the `scripts/run.py`\n  script.\n\nBuild:\n\n    $ docker build -t pbui/dredd:20170814      - \u003c Dockerfile.submit     # GitLab CI\n    $ docker build -t pbui/dredd-code:20170825 - \u003c Dockerfile.code       # Code run.py\n\nPush:\n\n    $ docker push pbui/dredd:20170814\n    $ docker push pbui/dredd-code:20170825\n    \n# Programming Languages\n\nTo add support for a programming language, you must do the following:\n\n1. Update `Dockerfile.code` to include the interpreter or compiler.\n\n2. Update `scripts/run.py` to include a rule for the programming language. For\n   instance, to support `C` and `Python`, you need to specify the following:\n\n    ```\n    Language('C',                                       # Language\n        'gcc -std=gnu99 -o {executable} {source} -lm',  # Compilation\n        './{executable}',                               # Execution\n        ('.c',)                                         # Extension\n    ),\n    Language('Python',                                  # Language\n        '',                                             # Compilation\n        'python3 {source}',                             # Execution\n        ('.py',)                                        # Extension\n    ```\n    \n3. Update `tests/test_code_echo.sh` to include a simple **echo** test for that\n   language (ie. the program reads in the input and echos it back).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpbui%2Fdredd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpbui%2Fdredd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpbui%2Fdredd/lists"}