A simple web-based e-proctoring app that supports multiple inputs and devices.
Note: These instructions are written for Linux.
You will need podman
installed.
Paste the following code into the terminal:
git clone https://github.com/l-yc/nush-proctor && cd nush-proctor
cd deploy
mv config.example.js config.js
mv accounts.example.csv accounts.csv
cd ..
./quickstart.sh
Navigate to localhost:8080
with your browser. The following default logins are available:
- Admin/Proctor: username=
adminproctor
, password=passadmin
- Proctor Only: username=
proctor
, password=passproctor
- Student (under admin): username=
student1
, password=pass1
- Student: (under proctor) username=
student2
, password=pass2
Caveat: This only work with STUN, i.e. you should refer to the next section for how to deploy it to the public.
To configure the coturn server, edit quickstart.sh
:
DOMAIN_NAME
: Use the server's domain name.EXTERNAL_IP
: Use the server's external IP.AUTH_SECRET
: Generate a random string.
For deploy/config.js
, the following fields should be changed:
sessionSecret
: Generate a random string. (Best Practice)iceServers.urls
: Replacelocalhost
with theDOMAIN_NAME
of your coturn server.iceServers.auth
: Must be set toAUTH_SECRET
.
When editing accounts.csv
, the following rules must be followed:
- Format:
<role1>, ... ,<roleN>; <username>; <password>; [<proctor>]
- One account per line. Accounts may be specified in any order.
<roleN>
: Must be one ofadmin
,proctor
, orstudent
. Multiple roles may be specified in any order[<proctor>]
: Optional. Should be a proctor's username. Note that the validation does not check if a proctor specified exists.
WIP