PHPackages                             webpa/webpa - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. webpa/webpa

ActiveProject[Utility &amp; Helpers](/categories/utility)

webpa/webpa
===========

WebPA is an online peer assessment system for higher education institutions. It is designs for teams of students doing groupwork. The system allows participating students to assess themselves and their peers to calculate a final grade for each student, which is a weighted result based on the collective peer feedback and the final mark for the group work by an instructor.

v3.2.2(3y ago)3535630[47 issues](https://github.com/WebPA/WebPA/issues)[11 PRs](https://github.com/WebPA/WebPA/pulls)GPL-3.0-onlyPHPPHP &gt;=7.4

Since Aug 6Pushed 6mo ago11 watchersCompare

[ Source](https://github.com/WebPA/WebPA)[ Packagist](https://packagist.org/packages/webpa/webpa)[ Docs](http://webpaproject.lboro.ac.uk)[ RSS](/packages/webpa-webpa/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (10)Dependencies (5)Versions (19)Used By (0)Security (1)

WebPA - An Online Peer Assessment Tool for Higher Education
===========================================================

[](#webpa---an-online-peer-assessment-tool-for-higher-education)

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.

Requirements
------------

[](#requirements)

### PHP

[](#php)

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

### NPM

[](#npm)

Node package manager is required to install feather-icons, an icon package used by WebPA. Once you have downloaded WebPA navigate to its root on the command line and run:

- `npm install`
- `npm run build`

The first command will retrieve the feather-icons package and the second will move the relevant files to WebPA's *js*directory for use in the application.

Installation
------------

[](#installation)

### Download

[](#download)

The easiest way to download WebPA is with the [composer package manager](https://getcomposer.org) 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](https://github.com/WebPA/WebPA/releases).

### Configuration

[](#configuration)

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](https://github.com/vlucas/phpdotenv). For more information on setting environmental variables in Apache, please [visit Apache's website](https://httpd.apache.org/docs/2.4/mod/mod_env.html#setenv).

### Initialise the Database

[](#initialise-the-database)

Run the following scripts to initialise the database (edit the files to change the names and password as required):

- 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.

#### Upgrading an Existing Installation

[](#upgrading-an-existing-installation)

If you already have WebPA installed and are upgrading from version 3.1.0 or below, please run:

- install/webpa\_security\_update.sql

### Login to WebPA

[](#login-to-webpa)

- 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.

LTI Extension
-------------

[](#lti-extension)

The standard installation of WebPA does not include [LTI](https://www.imsglobal.org/activity/learning-tools-interoperability) (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](http://www.spvsoftwareproducts.com/php/webpa-lti/) for instructions on how to obtain and install this extension.

Documentation
-------------

[](#documentation)

Documentation for WebPA can be found on the [WebPA project site](http://webpaproject.lboro.ac.uk/).

Changelog
---------

[](#changelog)

Please see our [changelog](https://github.com/WebPA/WebPA/blob/master/CHANGELOG.md) for a list of updates for this system.

This project uses [semantic versioning](https://semver.org/) from version 3.0.0 onwards.

Contributing
------------

[](#contributing)

We always welcome contributors to WebPA. If you can help with development, testing, or documentation, please submit a pull request to this repository.

Support
-------

[](#support)

Bugs and feature requests are tracked on this project's [GitHub issue tracker](https://github.com/WebPA/WebPA/issues).

License
-------

[](#license)

This software is distributed under the [GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.en.html).

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 &amp; install instructions.

Credits
-------

[](#credits)

WebPA was originally developed by the Centre for Engineering and Design Education at [Loughborough University](http://www.lboro.ac.uk/) with financial support from [JISC](https://www.jisc.ac.uk/)'s e-Learning Capital Programme.

It continues to be maintained by a number of [open source contributors](https://github.com/WebPA/WebPA/graphs/contributors). We thank them for their time and effort supporting this system.

###  Health Score

40

—

FairBetter than 86% of packages

Maintenance27

Infrequent updates — may be unmaintained

Popularity28

Limited adoption so far

Community23

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 97.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~107 days

Recently: every ~98 days

Total

16

Last Release

1267d ago

PHP version history (3 changes)v3.0.0PHP &gt;=7.0.0

v3.1.0PHP &gt;=7.2

v3.1.2PHP &gt;=7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/24ff986b9d3ca464465e5d890dcac7ec85b23d6b6739ab90918402d6dcce807e?d=identicon)[sephster](/maintainers/sephster)

---

Top Contributors

[![Sephster](https://avatars.githubusercontent.com/u/1457058?v=4)](https://github.com/Sephster "Sephster (443 commits)")[![JohnSmith-LT](https://avatars.githubusercontent.com/u/3907362?v=4)](https://github.com/JohnSmith-LT "JohnSmith-LT (4 commits)")[![patfleury](https://avatars.githubusercontent.com/u/10723470?v=4)](https://github.com/patfleury "patfleury (2 commits)")[![paulheaney](https://avatars.githubusercontent.com/u/118040?v=4)](https://github.com/paulheaney "paulheaney (2 commits)")[![Leoramsy](https://avatars.githubusercontent.com/u/10142144?v=4)](https://github.com/Leoramsy "Leoramsy (1 commits)")[![tsalyers](https://avatars.githubusercontent.com/u/1810929?v=4)](https://github.com/tsalyers "tsalyers (1 commits)")[![rcraggs](https://avatars.githubusercontent.com/u/3081903?v=4)](https://github.com/rcraggs "rcraggs (1 commits)")[![jonathan-knight](https://avatars.githubusercontent.com/u/29144595?v=4)](https://github.com/jonathan-knight "jonathan-knight (1 commits)")[![mcrauwel](https://avatars.githubusercontent.com/u/1309456?v=4)](https://github.com/mcrauwel "mcrauwel (1 commits)")

---

Tags

educationhigher-educationltipeer-assessmentstudentswebpareviewgroupuniversityAssessmentmarkhigher educationpeermarking

###  Code Quality

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/webpa-webpa/health.svg)

```
[![Health](https://phpackages.com/badges/webpa-webpa/health.svg)](https://phpackages.com/packages/webpa-webpa)
```

###  Alternatives

[azuracast/azuracast

The AzuraCast self-hosted web radio station management suite.

3.9k27.8k](/packages/azuracast-azuracast)[blair2004/nexopos

The Free Modern Point Of Sale System build with Laravel, TailwindCSS and Vue.js.

1.2k2.4k](/packages/blair2004-nexopos)[venturedrake/laravel-crm

A free open source CRM built as a package for laravel projects

42010.0k](/packages/venturedrake-laravel-crm)[oat-sa/tao-core

TAO core extension

66140.1k108](/packages/oat-sa-tao-core)[rias/statamic-redirect

29322.9k](/packages/rias-statamic-redirect)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
