Popov85 / e-ratos-frontend

React.js based frontend for e-Ratos project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

e-RATOS (frontend)

This is React.js-based frontend for e-Ratos (Embeddable Remote Automatised Teaching and Controlling System) project. It consists of multiple modules (entry points):

  • Session (session.js)
  • Student (student.js)
  • Staff (staff.js)

All output .js files are supposed to be available as same-origin scripts due to LTI v1.0 limitations (all the logic handling authentication is implemented at the backend in Spring Security framework). This repo as a separated one is solely for the sake of development convenience, thus a separate deployment of this front-end is not implied.

Technologies

  • React;
  • Redux;
  • Bootstrap;
  • HTML;
  • Babel;
  • Node.js (solely for development), npm
  • Parcel bundler (based on Webpack).

Build and deployment

For development: Launches index.html in browser and tracks changes in js.files

npm start

For debugging:
[Make sure to switch dev profile to true ] Creates build in /dist folder with all the entry points not minimized for debugging

npm run dev

For production:
[Make sure to switch dev profile to false ] Creates build in /dist folder with all the entry points minimized for production

npm run prod

Integration with backend server

After creating the bunch of output files (img, css, js, etc.) for production in /dist folder, manually copy these files to backend folder /static; An aggregate automatised way to do it is under consideration.

TODO

Session module
  1. Add QuestionFBSQ (normal, answered, checked, etc.) see Java abstraction;
  2. Add QuestionFBMQ (normal, answered, checked, etc.) see Java abstraction;
  3. Add QuestionMQ (normal, answered, checked, etc.) see Java abstraction;
  4. Add QuestionSQ (normal, answered, checked, etc.) see Java abstraction;
Staff module
  1. Inside Scheme, add CRUD on Options;
  2. Inside Scheme, add CRUD on Gradings (3 types);
  3. Inside Scheme add student groups;
  4. Add students groups management (create group, add member, look-up student, etc.);
  5. Add mistake reports management (alerts about reports, fixing mistakes, etc.)
Student module
  1. Create this module;
  2. Add student results review across departments;
  3. Add student preserved sessions management;
  4. Add student starred questions management;
  5. Add student complaints management;
  6. Add student gamification panel (current status name, total points {weekly, monthly, total}, TOP-10 students weekly, all times, etc.)
For implementors

Guys, please make sure to cross the finished items out.

About

React.js based frontend for e-Ratos project

License:MIT License


Languages

Language:JavaScript 99.7%Language:CSS 0.1%Language:HTML 0.1%