CSC/ECE 517 Spring 2023 - E2348 Replicate Roles and Institution UIs ReactJS: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 6: Line 6:


The components that we are responsible for are pages for Roles and Institutions. The previous implementation just listed out the names along with the options to show, edit or delete them. In the new implementation, we aim to beautify these pages by making using of CSS frameworks with React JS. Following are the changes that will be done in the new implementation:
The components that we are responsible for are pages for Roles and Institutions. The previous implementation just listed out the names along with the options to show, edit or delete them. In the new implementation, we aim to beautify these pages by making using of CSS frameworks with React JS. Following are the changes that will be done in the new implementation:
1. Render the names on the respective pages in a tabular format.
1. Render the names on the respective pages in a tabular format.



Revision as of 21:15, 6 April 2023

Overview of Expertiza

Expertiza is a learning management system that is developed with Ruby on Rails and is accessible as open source software. It can create assignments, tests, assignment teams, and courses, among a wide range of other features and functions. It also has a thorough system for giving other teams and groups of teammates peer reviews and feedback. The files that are largely addressed in this project are the frontend React Components of User, Institution and Roles. A fully functional UI for these components will be developed using React for this project.

Description of Project

This project focuses on creating User Interfaces for Roles and Institutions pages using React JS. Previously, Ruby template parser was used for building the application. However, in the new reimplementation the backend and frontend applications have been separated and they are run independently. This allows us to have more flexibility with the technology stack. It is for this reason, the frontend application is being developed using React JS.

The components that we are responsible for are pages for Roles and Institutions. The previous implementation just listed out the names along with the options to show, edit or delete them. In the new implementation, we aim to beautify these pages by making using of CSS frameworks with React JS. Following are the changes that will be done in the new implementation:

1. Render the names on the respective pages in a tabular format.

2. Provide the options for adding, editing and deleting entities depending on the pages.

3. Displaying appropriate alerts after any changes are made (add/edit/delete).

Changes Made

Changes to app/models/assignment_node.rb

 #  Change Why?
1 Redefined self.get method and added two new methods self.get_assignment_query_conditions and self.get_assignments_managed_by_user. The self.get method calls these two methods and creates the database query for getting the assignments. Creating two extra methods and calling them from self.get makes the code readable and uniform among all the files.

Testing

Testing was not in the scope for this project as it is frontend development. Testing the frontend of a React website involves ensuring that the user interface of the website behaves as expected and delivers a seamless user experience. Manual testing will be conducted to ensure that all the UI components work as intended. A video showing the working of the added components will be uploaded soon.

Relevant Links

Contributors to this project

  • Palash Rathod (unityid: prathod, github: palash27)
  • Neha Kale (unityid: nkale2, github: nehakale8)
  • Vansh Mehta (unityid: vpmehta2, github: vanshmehta-7)