Student Submission Integrity Diagnosis
Student Submission Integrity Diagnosis (SSID) is a Ruby on Rails web application suite for managing courses, assignments, staff, teaching assistants, students, and student code submissions and most importantly, to detect and visualize plagiarism among student code submissions.
Table Of Contents
NOTE: If you are using a Windows OS, please ensure that you have a linux environment to make changes to the code and run it in either the development or production mode. This is because some functions like fork are not supported by the Windows OS. To run a linux environment on Windows, you can either
- Ensure you have Java
11or later) installed in your Computer.
- Ensure that you have installed Ruby (v2.6.6) and bundler (v2.1.4)
- Since the application uses MySQL as its database server, please ensure that you have installed MySQL 8.0.
Setup and Configuration
Before following the below instructions, please ensure that you have met all the prerequesties listed
Clone SSID's source code onto your computer
git clone https://github.com/WING-NUS/SSID.git
Go to config/database.yml and modify the file by changing the username and password fields with your MySQL database settings (Please do it for all the 3 listed databases in the file)
Now, go to config/envionments/ and add the respective line to the respective file(s)
- Under config/envionments/development.rb & config/envionments/test.rb, add the below line:
config.eager_load = false
- Under config/envionments/production.rb add the below line:
config.eager_load = true
Open your terminal and navigate to the code directory. Run bundler to install the necessary gems (including rails) from the root directory of SSID:
#Use the following solution if you have problem "Your bundle is locked to mimemagic (0.3.5)"
Execute the following command in the root directory of SSID depending on which mode you wish to run the app:
- Production Mode
rake db:migrate RAILS_ENV=production rake db:seed
- Development Mode
rake db:create db:schema:dump db:migrate RAILS_ENV=development rake db:seed
Running SSID: Execute the following command in the root directory of SSID depending on which mode you wish to run the app:
Production mode: configure Apache to serve web requests to SSID
RAILS_ENV=development rails server
- Adding support for new language in SSID
- Deploying SSID app on a Linux/Unix production server
- Guide for semestral clearing of courses and submissions
- User Guide
To request features, you may want to log an issue on Github.
For other inquiries, please contact us with subject starting with
SSID is licensed under the [GNU Lesser General Public License] gpl