Skip to content

Research Project Management Tool - Application Frameworks - SE3040 [2022/FEB] Assignment 02 at SLIIT

Notifications You must be signed in to change notification settings

amila1998/Research-Project-Management-Tool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License


Logo

Research Project Management Tool

Sri Lanka Institute of Information Technology
Aplication Framework - SE3040

Assignment 02
2022S1_REG_31

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. Contact

About The Project

All SLIIT undergraduates must do a research project in their 4th year. This Research Project module is a 16 credit, two semesters long project. A student group must find a research topic in a specific research field and send it to a supervisor who has interests in the same research field. Once the supervisor accepted the topic, they must find a co-supervisor of the same research interest. After finalizing the supervisor student must send a document including the topic details of the Research. Then topic evaluation panel will evaluate the topic and send feedback to the student group. If the topic is accepted, they can continue to do the project. If rejected, they must find a new topic and submit it back. There are several evaluation stages. Document submissions are evaluated by the supervisor or the co-supervisor. Presentations will be evaluated by a separate panel. The final Thesis will be Double evaluated by the supervisor and a blind reviewer. SLIIT Research project team is looking for a system, which has the capability of managing the Research project and automating certain tasks.

User Classes

  • Admin
  • Student
  • Staff
    • Supervisor
    • Co-Supervisor
    • Panel Member

User Characteristics

  • Admin
    • Delete/Update users
    • Create submission types
    • Allocate panel members to student groups
    • Create marking schemes
    • Upload document/presentation templates
    • View Roles
  • Student
    • Register
    • Create student groups
    • Register research topic
    • Request supervisor
    • Request co-supervisor
    • Submit documents
    • Download Templates
  • Staff
    • Register
  • Supervisor / Co-Supervisor
    • Should be a staff member
    • Accept topics
    • Chat with the groups
    • Evaluate Documents submitted by groups using the provided marking scheme
  • Panel Member
    • Should be a staff member
    • Admin will add them to a panel
    • Evaluate topics
    • Evaluate students’ presentations according to the provided marking scheme

(back to top)

Built With

  • MongoDB - MongoDB is a source-available cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas.
  • Express.js - Express.js, or simply Express, is a back end web application framework for Node.js, released as free and open-source software under the MIT License. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js.
  • React.js - React is a free and open-source front-end JavaScript library for building user interfaces based on UI components.
  • Node.js - Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser.

(back to top)

Getting Started

Prerequisites

  1. Must have an Installed Node.js to your local machine
  2. Must have a MongoDB Account
  3. Must have a Cloudanary Account

Installation

  1. Clone the repo
    git clone https://github.com/amila1998/Research-Project-Management-Tool.git
  2. Install NPM packages
      cd client 
      npm install
     cd server 
     npm install
  3. Create .env file inside the server folder and Enter Following Keys
       MONGODB_URL = (your mongoDB Url)
       
       APP_SECRET=qwertyuiop
       APP_PORT=8000
       
       ACTIVATION_TOKEN=adwdawdawdaw
       REFRESH_TOKEN=ahbdahwdjawdj
       ACCESS_TOKEN=ajdwajwdn
       
       G_CLIENT_ID= ()
       G_CLIENT_SECRET = ()
       G_REFRESH_TOKEN= ()
       ADMIN_EMAIL= 2022s1reg31@gmail.com
    
       CLOUD_NAME=(Your Cloudanary Name)
       CLOUD_API_KEY=(Your Cloudanary Api Key)
       CLOUD_API_SECRET=(Your Cloudanary SECRET Key)
  4. To Run the server
      cd server
      npm run dev
  5. To Run the client
         cd client
         npm start

Server Running on http://localhost:8000
Default Client Runnig on http://localhost:3000

(back to top)

Usage

Auth

login Forgot Password Student Registration Staff Registeration Reset Password Account Activate profile De Profile update

Student

Student Dashboard step 1 Group Registration Group Details Topic Registration Topic Details Request Supervisor Request Supervisor Reject Supervisor Details Supervisor Details (buttonClick) Request Co Supervisor Co Supervisor Reject Co Supervisor Details Download Templates Group Chat Student Dashboard final step Add Submissions Update Submissions

Supervisor

Supervisor Dashbord Submission Evaluvation Get Group Requests Group Chat

Co Supervisor

Co Supervisor Dashboard Co Supervisor Submission Evaluvation Get Group Requests Group Chat

Panal Member

Panal Member DashBord Panal Member Evaluvate Submissions Topic Evaluvation

Admin

Admin Dashboard Admin User Management Admin Submission Type Management Admin Submission Type Management Add new Submission Admin Submission Template Management Admin Submission Template Management Admin Group Management (beforeThePanalMemberAdding) Admin Topic Evaluvation Panal Management Admin Add New Panal Member To The Topic Evaluvation Panal

Others

Contact Us About Us

Database

DB

Emails

Account Activation Email

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch
  3. Commit your Changes
  4. Push to the Branch
  5. Open a Pull Request

(back to top)

Contact

Group Leader - Wijesuriya W A D J K D - IT20750374 - it20750374@my.sliit.lk

Member - Senarathne S M A D - IT20089436 - it20089436@my.sliit.lk

Member - Udayantha Yapa Y M S - IT20045708 - it20045708@my.sliit.lk

Member - Kumarasingha S N - IT20151638 - it20151638@my.sliit.lk

Project Link: https://github.com/amila1998/Research-Project-Management-Tool

(back to top)