@edx/gradebook v1.4.11
gradebook
Please tag @edx/educator-neem on any PRs or issues.
Introduction
The front-end of our editable Gradebook feature.
Usage
To install gradebook into your project:
npm i --save @edx/gradebookRunning the UI Standalone
To install the project please refer to the edX Developer Stack instructions.
The web application runs on port 1994, so when you go to http://localhost:1994/course-v1:edX+DemoX+Demo_Course you should see the UI (assuming you have such a Demo Course in your devstack). Note that you always have to provide a course id to actually see a gradebook.
If you don't, you can see the log messages for the docker container by executing make gradebook-logs in the devstack directory.
Note that starting the container executes the npm run start script which will hot-reload JavaScript and Sass files changes, so you should (:crossed_fingers:) not need to do anything (other than wait) when making changes.
Configuring for local use in edx-platform
Assuming you've got the UI running at http://localhost:1994, you can configure the LMS in edx-platform
to point to your local gradebook from the instructor dashboard by putting this settings in lms/env/private.py:
WRITABLE_GRADEBOOK_URL = 'http://localhost:1994'There are also several edx-platform waffle and feature flags you'll have to enable from the Django admin:
Grades > Persistent grades enabled flag. Add this flag if it doesn't exist, check the
enabledandenabled for all coursesboxes.Waffle > Switches. Add the
grades.assume_zero_grade_if_absentswitch and make it active.Waffle_utils > Waffle flag course overrides. You want to activate this flag for any course in which you'd like to enable the gradebook. Add a course override flag using a course id and the flag name
grades.writable_gradebook. Make sure to check theenabledbox. Alternatively, you could add this as a regular waffle flag to enable the gradebook for all courses.
Running tests
- Assuming that you're operating in the context of the edX devstack,
run
gradebook-shellfrom your devstack directory. This will start a bash shell inside your running gradebook container. - Run
make test(which executesnpm run test). This will run all of the gradebook tests.
Directory Structure
config- Directory for
webpackconfigurations
- Directory for
public- Entry point for the single-page application -
gradebookhas a singleindex.htmlfile
- Entry point for the single-page application -
srccomponents- Directory for presentational
Reactcomponents
- Directory for presentational
containers- Directory for container
Reactcomponents
- Directory for container
dataactions- Directory for
Reduxaction creators
- Directory for
constantsreducers- Directory for
Reduxreducers
- Directory for
Authentication with backend API services
See the @edx/frontend-auth repo for information about securing routes in your application that require user authentication.
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago