This is a web application to help save time grading introductory programming assignments.
Brief description of the problem
- Students submitted assignments that are stored on a server
- Tutors SSH into server, compiled and ran each program manually
- Grades were then individually sent through email to the students and professor
This application helps solve this problem by allowing the professor to log into the application which will then internally SSH into the school's server and run my grading script on the server. The grading script will compile each of the student's program and merge the output/input into a file on the school's server. (We keep these files on the school's server because we are only using heroku's and mlab's free tier so we want to preserve as much space as possible.) Graders are then able to log into the web application and view these files while adding grades/comments that they can submit.
#Development
npm install
MONGOLAB_URI
(You can either point to a local MongoDB or use a free dev tier from https://mlab.com/)SSH_SERVER_INFO
(This is the SSH Server that the SSH Accounts are used on. Ask me for info)- SparkPost (Ask me for info)
SSH_TEST_INFO
(This is the SSH Info to run SSH tests on)
npm run dev
npm run build
npm run start
For testing client side code
npm run test
For testing API's (Windows)
npm run win-test-node
For testing API's (Non-Windows)
npm run test-node
When trying to debug infinite loop programs please verify that you don't leave any processes running
Check for the processes running by using this command
ps aux | grep <ACCOUNT>
Kill any processes that should not be running
kill -15 <PID>
Please help contribute by submitting feedback, bugs, or pull requests!
- Package Control
- Babel
- Git
- Sass
- SublimeLinter
- SublimeLinter-contrib-eslint
This uses a boilerplate from https://github.com/erikras/react-redux-universal-hot-example so please take a look here before contributing!