webpal
v0.1.8
Published
Webpal is a Node.js library designed to automatically assess simple web applications. It allows teachers to create and manage exercises and evaluate student attempts against those exercises.
Downloads
4
Readme
Webpal - WEB Programming Assessment for Learning
Webpal is a Node.js library designed to automatically assess simple web applications. It allows teachers to create and manage exercises and evaluate student attempts against those exercises.
Table of Contents
Installation
To install the package, run the following command:
npm install --save webpal
Importing
To use Webpal, you need to import it in your project. Here's an example:
const webpal = require("webpal");
API Functions
createExercise
The createExercise
function creates a new exercise and returns the exercise ID.
const exerciseID = await webpal.createExercise(exerciseData, testData, assignment);
exerciseData
(String): A string containing the JSON representation of the exercise data.testData
(String): An object containing the test data for the exercise.assignment
(String): A string describing the assignment.
deleteExercise
The deleteExercise
function deletes an exercise by its ID.
webpal.deleteExercise(id);
id
(String): The exercise ID.
getFullExercise
The getFullExercise
function returns the full exercise object by its ID.
const fullExercise = webpal.getFullExercise(id);
id
(String): The exercise ID.
getExerciseData
The getExerciseData
function returns the exercise data by its ID.
const exerciseData = webpal.getExerciseData(id);
id
(String): The exercise ID.
getExerciseTestData
The getExerciseTestData
function returns the exercise test data by its ID.
const exerciseTestData = webpal.getExerciseTestData(id);
id
(String): The exercise ID.
getExerciseAssignment
The getExerciseAssignment
function returns the exercise assignment by its ID.
const exerciseAssignment = webpal.getExerciseAssignment(id);
id
(String): The exercise ID.
getAllExercises
The getAllExercises
function returns an array of all the exercises.
const allExercises = webpal.getAllExercises();
evaluateAttempt
The evaluateAttempt
function evaluates a student's attempt for a given exercise and returns the feedback.
const evaluationResults = await webpal.evaluateAttempt(exerciseID, attemptData, PORT, previousFeedback);
exerciseID
(String): The exercise ID.attemptData
(String): A string containing the JSON representation of the student's attempt data.PORT
(Number): The port number to be used for the evaluation.previousFeedback
(Array): An array containing strings of the previous feedback for the student.