Git Product home page Git Product logo

team3-front-end's Introduction

MTMS Frontend

Editor

Marker & Tutor Management System - One COMPSCI399 Project

Our Website

https://uoamtms.com/

Project management tool

We are notion to manage our project. https://yogurtsoftware.notion.site/Home-54f80f6bef7a474d93e1f61a590d5ced

Project overview

Marker & Tutor Management System (MTMS) is an web based tool for managing enrollment of the tutor and markers for the University of Auckland.

Technologies used

Main technology used:

Development dependencies:

"@intlify/unplugin-vue-i18n": "^0.7.0",
"@types/node": "^18.7.6",
"@vitejs/plugin-vue": "^3.0.3",
"@vitejs/plugin-vue-jsx": "^2.0.1",
"dayjs": "^1.11",
"sass": "^1.54.4",
"sass-loader": "^13.0.2",
"typescript": "^4.6.4",
"unplugin-auto-import": "^0.11.2",
"unplugin-vue-components": "^0.22.4",
"vite": "^3.0.7",
"vite-plugin-pwa": "^0.13.1",
"vue-slicksort": "^2.0.0-alpha.5",
"vue-tsc": "^0.39.5"

Dependencies

"@element-plus/icons-vue": "^2.0.9",
"@fortawesome/fontawesome-free": "^6.2.0",
"@fortawesome/fontawesome-svg-core": "^6.2.0",
"@fortawesome/free-brands-svg-icons": "^6.2.0",
"@fortawesome/free-regular-svg-icons": "^6.2.0",
"@fortawesome/free-solid-svg-icons": "^6.2.0",
"@fortawesome/vue-fontawesome": "^3.0.1",
"@vueuse/components": "^9.3.1",
"@vueuse/core": "^9.3.1",
"axios": "^0.27.2",
"dayjs": "^1.11",
"echarts": "^5.4.0",
"element-plus": "^2.2.15",
"js-base64": "^3.7.2",
"pinia": "^2.0.21",
"vue": "^3.2.37",
"vue-confetti-explosion": "^1.0.1",
"vue-i18n": "^9.2.2",
"vue-pdf": "^4.3.0",
"vue-router": "^4.1.3",
"vue-slicksort": "^2.0.0-alpha.5",
"vxe-table": "^4.3.5",
"xe-utils": "^3.5.7"

Installation for Development

You need to deploy and start MTMS Backend First https://github.com/uoa-compsci399-s2-2022/team3-back-end

Clone the repository to your PC

git clone https://github.com/uoa-compsci399-s2-2022/team3-front-end.git

Enter the project directory

cd team3-front-end

Install the required dependencies.

make sure you have installed node.js in order the install dependencies via npm

npm install

Run the Vite development server. (which will run the script defined in the packge.json)

npm run dev

Build for Production

Build the project for production

npm run build

After running, a static folder dist will be generated in the project root directory, you can deploy this folder to a static web server (Apache2, Nginx and so on)

Other setup options

.env.development you can config baseURL in developing mode.

.env.production you can config baseURL in developing mode

If you have Cross Origin Request Blocked problem, you can config the proxy url

image-20221023180008092

Usage examples

Scenario 1. Administrator want's to add a new term, and a course of that term.

Step 1

image-20221023180008092

image-20221023180008092

Step 2

Enter term information and add term

image-20221023180008092

Add a new course

image-20221023180008092

New Course is added, you can delete / modify or add another course as you wish.

image-20221023180008092

Future Work

  1. Automatically assigning function

    Automatically assigning function is not part of our project, but it can significantly reduce the tutor/marker coordinator's workload. So we will implement this feature in our future work. While the Hungarian algorithm (https://en.wikipedia.org/wiki/Hungarian_algorithm) can solve this feature after modification.The problem is similar to “n agents, m tasks” assignment problem in combinatorics, except that in our case one marker can mark many courses, and one course can have many markers.According to the students on a course of suitability and preferences, it will automatically match work course and time.

  2. Payment Day Email Reminder

    In the future, we will add automatic email reminders system for tutors and markers so that they can submit their workload before payday. The coordinator can set the number of paydays and dates, as well as how many days to send the email in advance.

  3. In-site Messaging System

    For a recruitment and administration site, the presence of a messaging system within the site is the icing on the cake, which allows for more accessible communication between students and coordinators. It dramatically simplifies the recruitment steps. In addition, we can also connect it to the email reminder system so that when users are not online, they can receive the reminder email.

Acknowledgement

  1. Many thanks to our Clients: Burkhard and Sudeep,Coordinator: Asma,Tutor: Anshul for all the assistance, feedback and suggestions they have given us throughout the project.
  2. Compsci335 The distributed system knowledge taught served as the cornerstone of the front-end end of our project.
  3. Compsci345 The knowledge of design principle and UX increases the usability of our website
  4. Pinia documentation
  5. Vue3 documentation
  6. vue-router documentation
  7. Axios Tutorials

team3-front-end's People

Contributors

haiqiang-zhang avatar zwan669 avatar ranc151 avatar laiyu111 avatar andbridge avatar hhwzhang avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.