{"id":20037890,"url":"https://github.com/openedx/frontend-app-ora-grading","last_synced_at":"2025-05-05T06:31:44.151Z","repository":{"id":37002485,"uuid":"407337076","full_name":"openedx/frontend-app-ora-grading","owner":"openedx","description":"Open Response Assessment - Enhanced Staff Grader - Allows graders to easily review, evaluate and grade ORAs","archived":false,"fork":false,"pushed_at":"2025-04-23T20:17:57.000Z","size":4977,"stargazers_count":3,"open_issues_count":30,"forks_count":50,"subscribers_count":60,"default_branch":"master","last_synced_at":"2025-04-23T21:27:42.879Z","etag":null,"topics":["pr-sandboxes-enabled"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openedx.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-09-16T22:57:46.000Z","updated_at":"2025-04-23T20:18:01.000Z","dependencies_parsed_at":"2023-10-23T20:27:53.809Z","dependency_job_id":"3e007618-0991-4ffd-9bd2-325516cd35f5","html_url":"https://github.com/openedx/frontend-app-ora-grading","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Ffrontend-app-ora-grading","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Ffrontend-app-ora-grading/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Ffrontend-app-ora-grading/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Ffrontend-app-ora-grading/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openedx","download_url":"https://codeload.github.com/openedx/frontend-app-ora-grading/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252451553,"owners_count":21749954,"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":["pr-sandboxes-enabled"],"created_at":"2024-11-13T10:23:35.734Z","updated_at":"2025-05-05T06:31:43.766Z","avatar_url":"https://github.com/openedx.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"frontend-app-ora-grading\n#############################\n\n|license-badge| |status-badge| |ci-badge| |codecov-badge|\n\n\nPurpose\n*******\n\nThe ORA Staff Grading App is a micro-frontend (MFE) staff grading experience\nfor Open Response Assessments (ORAs). This experience was designed to\nstreamline the grading process and enable richer previews of submission content\nand, eventually, replace on-platform grading workflows for ORA.\n\nWhen enabled, ORAs with a staff grading step will link to this new MFE when\nclicking \"Grade Available Responses\" from the ORA or link in the instructor\ndashboard.\n\nThe ORA Staff Grader depends on the `lms/djangoapps/ora_staff_grader\n\u003chttps://github.com/openedx/edx-platform/tree/master/lms/djangoapps/ora_staff_grader\u003e`_\napp in ``edx-platform``.\n\nGetting Started\n***************\n\nPrerequisites\n=============\n\nThe `devstack`_ is currently recommended as a development environment for your\nnew MFE.  If you start it with ``make dev.up.lms`` that should give you\neverything you need as a companion to this frontend.\n\nNote that it is also possible to use `Tutor`_ to develop an MFE.  You can refer\nto the `relevant tutor-mfe documentation`_ to get started using it.\n\n.. _Devstack: https://github.com/openedx/devstack\n\n.. _Tutor: https://github.com/overhangio/tutor\n\n.. _relevant tutor-mfe documentation: https://github.com/overhangio/tutor-mfe#mfe-development\n\nPlugins\n=======\nThis MFE can be customized using `Frontend Plugin Framework \u003chttps://github.com/openedx/frontend-plugin-framework\u003e`_.\n\nThe parts of this MFE that can be customized in that manner are documented `here \u003c/src/plugin-slots\u003e`_.\n\nDeveloping\n==========\n\nCloning and Startup\n--------------\n\nFirst, clone the repo, install code prerequisites, and start the app.\n\n.. code-block::\n\n\n  1. Clone your new repo:\n\n  ``git clone git@github.com:openedx/frontend-app-ora-grading.git``\n\n  2. Use node v18.x.\n\n    The current version of the micro-frontend build scripts support node 18.\n    Using other major versions of node *may* work, but this is unsupported.  For\n    convenience, this repository includes an .nvmrc file to help in setting the\n    correct node version via `nvm \u003chttps://github.com/nvm-sh/nvm\u003e`_.\n\n  3. Install npm dependencies:\n\n    ``cd frontend-app-ora-grading \u0026\u0026 npm install``\n\n  4. Update the application port to use for local development:\n\n    Default port is 1993. If this does not work for you, update the line\n    `PORT=1993` to your port in all .env.* files\n\n  5. Start the dev server:\n\n    ``npm start``\n\nThe app will, by default, run on `http://localhost:1993` unless otherwise\nspecified in ``.env.development:PORT`` and ``.env.development:BASE_URL``.\n\nNext, enable the ORA Grading micro-frontend in `edx-platform`\n\n#. Add the path to the ORA Grading app in `edx-platform`:\n\n   #. Go to your environment settings (e.g. `edx-platform/lms/envs/private.py`)\n\n   #. Add the environment variable, ``ORA_GRADING_MICROFRONTEND_URL`` pointing\n      to the ORA Grading app location (e.g. ``http://localhost:1993``).\n\n#. Start / restart the ``edx-platform`` ``lms``.\n\n#. Enable the ORA Grading feature in Django Admin.\n\n   #. Go to Django Admin (`{lms-root}/admin`)\n\n   #. Navigate to ``django-waffle`` \u003e ``Flags`` and click ``add/enable a new\n      flag``.\n\n   #. Add a new flag called ``openresponseassessment.enhanced_staff_grader``\n      and enable it.\n\nFrom there, visit an Open Response Assessment with a Staff Graded Step and\nclick the \"View and grade responses\" button to begin grading in the ORA Staff\nGrader experience.\n\n\nMaking Changes\n--------------\n\nGet / install the latest code:\n\n.. code-block::\n\n  # Grab the latest code\n  git checkout master\n  git pull\n\n  # Install/update the dev requirements\n  npm install\n\n\nBefore committing:\n\n.. code-block::\n\n  # Make a new branch for your changes\n  git checkout -b \u003cyour_github_username\u003e/\u003cshort_description\u003e\n\n  # Using your favorite editor, edit the code to make your change.\n\n  # Run your new tests\n  npm test\n\n  # Commit all your changes\n  git commit ...\n  git push\n\n  # Open a PR and ask for review.\n\nDeploying\n=========\n\nThis component follows the standard deploy process for MFEs. For details, see\nthe `MFE production deployment guide`_\n\n.. _MFE production deployment guide: https://openedx.github.io/frontend-platform/#production-deployment-strategy\n\nInternationalization\n====================\n\nPlease see refer to the `frontend-platform i18n howto`_ for documentation on\ninternationalization.\n\n.. _frontend-platform i18n howto: https://github.com/openedx/frontend-platform/blob/master/docs/how_tos/i18n.rst\n\nGetting Help\n************\n\nIf you're having trouble, we have discussion forums at\nhttps://discuss.openedx.org where you can connect with others in the community.\n\nOur real-time conversations are on Slack. You can request a `Slack\ninvitation`_, then join our `community Slack workspace`_.  Because this is a\nfrontend repository, the best place to discuss it would be in the `#wg-frontend\nchannel`_.\n\nFor anything non-trivial, the best path is to open an issue in this repository\nwith as many details about the issue you are facing as you can provide.\n\nhttps://github.com/openedx/frontend-app-ora-grading/issues\n\nFor more information about these options, see the `Getting Help`_ page.\n\n.. _Slack invitation: https://openedx.org/slack\n.. _community Slack workspace: https://openedx.slack.com/\n.. _#wg-frontend channel: https://openedx.slack.com/archives/C04BM6YC7A6\n.. _Getting Help: https://openedx.org/community/connect\n\nLicense\n*******\n\nThe code in this repository is licensed under the AGPLv3 unless otherwise\nnoted.\n\nPlease see `LICENSE \u003cLICENSE\u003e`_ for details.\n\nContributing\n************\n\nContributions are very welcome.  Please read `How To Contribute`_ for details.\n\n.. _How To Contribute: https://openedx.org/r/how-to-contribute\n\nThis project is currently accepting all types of contributions, bug fixes,\nsecurity fixes, maintenance work, or new features.  However, please make sure\nto have a discussion about your new feature idea with the maintainers prior to\nbeginning development to maximize the chances of your change being accepted.\nYou can start a conversation by creating a new issue on this repo summarizing\nyour idea.\n\nThe Open edX Code of Conduct\n****************************\n\nAll community members are expected to follow the `Open edX Code of Conduct`_.\n\n.. _Open edX Code of Conduct: https://openedx.org/code-of-conduct/\n\nPeople\n******\n\nThe assigned maintainers for this component and other project details may be\nfound in `Backstage`_. Backstage pulls this data from the ``catalog-info.yaml``\nfile in this repo.\n\n.. _Backstage: https://open-edx-backstage.herokuapp.com/catalog/default/component/frontend-app-ora-grading\n\nReporting Security Issues\n*************************\n\nPlease do not report security issues in public, and email security@openedx.org instead.\n\n.. |license-badge| image:: https://img.shields.io/github/license/openedx/frontend-app-ora-grading.svg\n    :target: https://github.com/openedx/frontend-app-ora-grading/blob/master/LICENSE\n    :alt: License\n\n.. |status-badge| image:: https://img.shields.io/badge/Status-Maintained-brightgreen\n\n.. |ci-badge| image:: https://github.com/openedx/frontend-app-ora-grading/actions/workflows/ci.yml/badge.svg\n    :target: https://github.com/openedx/frontend-app-ora-grading/actions/workflows/ci.yml\n    :alt: Continuous Integration\n\n.. |codecov-badge| image:: https://codecov.io/github/openedx/frontend-app-ora-grading/coverage.svg?branch=master\n    :target: https://codecov.io/github/openedx/frontend-app-ora-grading?branch=master\n    :alt: Codecov\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenedx%2Ffrontend-app-ora-grading","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenedx%2Ffrontend-app-ora-grading","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenedx%2Ffrontend-app-ora-grading/lists"}