WebPA is an online peer assessment system, or more specifically, a peer-moderated marking system. It is designed for teams of students doing groupwork, the outcome of which earns an overall group mark. Each student in a group grades their team-mates and their own performance. This grading is then used with the overall group mark to provide each student with an individual grade. The individual grade reflects the students contribution to the group.
The following versions of PHP are supported for the latest version of WebPA:
- PHP 7.4
- PHP 8.0
Your PHP instance must also have the following extensions enabled:
- MySQLi
- Sessions
- XML
The easiest way to download WebPA is with the composer package manager using the following command:
composer create-project --prefer-dist --no-dev webpa/webpa webpa
Alternatively you can download the latest release from this repository's release page.
WebPA has a number of configuration options allowing you to set your database credentials, SMTP mail host details and various other options.
The application comes bundled with a .env.example
file which lists all of the configuation key-value pairs you can
set.
For speedy development, you can copy this .env.example
file to a file called .env
and change the values to suit your
environment. The path of this file can be set in the includes/inc_global.php
file.
For production environments, please avoid using the .env
file as storing sensitive credentials in a file could be a
security risk. Instead you should set these key-pairs as environment variables. In Apache, you can set these in your
.htaccess
file as follows:
SetEnv DB_HOST localhost
At a minimum, you should set the following environmental variables to let WebPA function:
- APP_WWW - URL to your instance of WebPA (set without a closing '/')
- DOC_ROOT - Directory path to the WebPA files (set with a closing '/')
- DB_HOST - Database host
- DB_USER - Database username
- DB_PASS - Database password
- DB_NAME - Database name
- DB_PREFIX - Database table prefix. Usually set to 'pa2_'
For more information on the dotenv file please visit the dotenv package's repository. For more information on setting environmental variables in Apache, please visit Apache's website.
Run the following scripts to initialise the database (edit the files to change the names and password as reqired):
- install/webpa2_database.sql: create the database schema and user account;
- install/webpa2_tables.sql: create the database tables;
- install/webpa2_administrator.sql: create an administrator account and sample module.
If you already have WebPA installed and are upgrading from version 3.1.0 or below, please run:
- install/webpa_security_update.sql
- navigate to root of WebPA application
- enter a username of admin and a password of admin
- change the password to something more secure after logging in
Delete the install folder when you're finished.
The standard installation of WebPA does not include LTI (Learning Tools Interoperability) support which allows it to integrate seamlessly with most popular Virtual Learning Environments. This can be added via an extension created by Stephen P Vickers. Please visit Stephen's site for instructions on how to obtain and install this extension.
Documentation for WebPA can be found on the WebPA project site.
Please see our changelog for a list of updates for this system.
This project uses semantic versioning from version 3.0.0 onwards.
We always welcome contributors to WebPA. If you can help with development, testing, or documentation, please submit a pull request to this repository.
Bugs and feature requests are tracked on this project's GitHub issue tracker.
This software is distributed under the GNU General Public License version 3.
You may copy, distribute and modify the software as long as you track changes/dates in source files. Any modifications to or software including (via compiler) GPL-licensed code must also be made available under the GPL along with build & install instructions.
WebPA was originally developed by the Centre for Engineering and Design Education at Loughborough University with financial support from JISC's e-Learning Capital Programme.
It continues to be maintained by a number of open source contributors. We thank them for their time and effort supporting this system.