Schoolwork Web Utilities
Switch branches/tags
Nothing to show
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.
css
images
protected
themes/classic/views
.gitignore
LICENSE
README.md
index.php-dist

README.md

SWU

Introduction

SWU, Schoolwork Web Utilities, is a web application that allows a teacher to publish his/her assignments, students to turn in their homeworks, and everybody to track what has been done and what is due.

It is developed in PHP / Javascript / HTML5, using the Yii framework.

It is released under the GNU Affero General Public License. The license file is available in the root directory of the project.

Features

With SWU, a teacher can:

  • prepare an assignment
  • assign it to his/her students
  • send email messages to the students, inviting them to turn it their work
  • print special codes that students can use to turn in their work
  • check uploaded works and send comments to the students

An exercise is the work assigned to a particular student. It can be in one of this status conditions:

  • just uploaded, not yet checked
  • checked, and marked as incomplete
  • checked, and marked as copied (sometimes it happens, unfortunately...)
  • checked, and marked as improvable
  • checked, and marked as completed
  • excused

The basic assumption is that works by the students are considered "in progress". They can try to do something, ask for comments and for help, improve their work, etc.

Each student is given a personal code to upload his / her files. The code can be printed or emailed. Works can be done in pairs and/or groups.

Ideas for improvements and enhancements

There is a lot of space for improvements and enhancements, of course.

Some things I'm thinking about:

  • organized / managed peer review by students
  • customized reports for the teacher and the students

Screenshots

Some screenshots are available on Loris Tissino's website.

Credits

SWU basically uses Yii as PHP framework and MySQL as database backend.

It also uses:

Setup

Follow the following steps. If you have problems, please contact the author.

  1. Download the Yii framework from http://www.yiiframework.com/download/ (release 1.1.15) and unzip it / untar it.

  2. Download the source code of the application and unzip it / untar it (you might prefer to use git for that purpose).

  3. Find the files ending with "-dist" and make a copy of them, removing the "-dist" part of the name.

  4. Download Twig, and install it on the protected/vendor directory (if you want, you can use composer for that -- follow the instructions).

  5. Create a MySQL database, and create the needed tables in it. The SQL code is available in the file protected/data/schema.mysql.sql.

  6. Insert some default values in the mailtemplate table. The SQL code is availabale in the file protected/data/mailtemplate_table_samplecontents.mysql.sql.

  7. Edit the file protected/config/main.php to store database's dbname, username and password.

Configuration

All settings are to be written in the protected/config/main.php file.

There are some defaults, so you can omit some of the settings. You can have a look at the defaults in the file protected/components/Helpers.php (see the function getYiiParam()).