Application for teachers so students can add themselves to a "help" queue
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
public
server
.gitignore
LICENSE
README.md
app.js
package.json

README.md

student-queue

Application for teachers so students can add themselves to a "help" queue

More specifically, this is a webserver with a Node.js backend that uses express.js and socket.io to provide students with forms to submit requests for help that the teacher or an aide can help with. The requests appear on a password-protected teacher page in real time, preventing the need for refreshing. Requests are added to all instances of the teacher page and fulfilled requests are removed from all instances as well. This server supports having multiple help queues, for instance one for each room to be used in.

This program is in functional beta, with more features to be added before I will consider this a full "stable" release.

How to use

Use in your own server is easy, simply create an app.js file with the following content:

var Queue = require("student-queue");

var queue = new Queue({
    host: "127.0.0.1",      // The host of the database. Use 127.0.0.1 or localhost for the same machine
    database: "mydb",       // The (by default) MySQL database to use for the program
    user: "myuser",         // The database user with access to the above database
    password: "P@SSW0RD",   // The database user's password
    port: 3000              // The port for the server to be accessed on. 3000 is default
});

queue.start();

The program currently expects to be run from the root of a domain or subdomain. So www.domain.com and helpqueue.domain.com are valid, but www.domain.com/queue/ is not. Keep that in mind when setting it up. There are no promises for this to change in the future.

Site administration can be found at /admin, as in https://helpqueue.domain.com/admin The default password is password You must change this yourself before putting it into production.

Queue names must contain only alphanumeric characters: A-Z and 0-9. If there is a queue called library, its homepage can be found at /library, the student page at /library/student, and the teacher page at /library/teacher.

Planned features can be found in the Issues tab on the GitHub page by filtering for the "enhancement" label