Skip to content

Onopchenko-Mark/Learning_Management_System

Repository files navigation

@UTSC-CSCC01-Software-Engineering/LMS

A learning management system like Quercus, but better.

Motivation

  • Current systems like Quercus have usability issues to both the educators and students, such as poor grade tracking, limited engagement tools, and complicated managing of assignments. Often this leads to an improper use of functions and more frustrations.
  • Our project aims to deliver an intuitive and comprehensive system for efficient course management, student collaboration, and seamless communication.
  • Core functionalities include course creation and management, assignment submissions with deadline tracking, accurate grade tracking, personal study notes for students, and tools to assist educators and teaching assistants in their administrative tasks.

Installation

Git and Nodejs are required for this project.

Download Git and Nodejs.

Clone the repo using git:

git clone https://github.com/UTSC-CSCC01-Software-Engineering-I/term-group-project-c01w25-project-lms.git

Frontend:

Navigate to /frontend

cd frontend

Install npm

npm install

Start the development mode of frontend

npm run dev

Build the frontend for production (compile)

npm run build

Start the production mode of frontend

npm start

Backend:

Navigate to /server

cd server

Install npm

npm install

Start the backend application.

npm start

You are ready to go!

Contribution

The project follows the Git Flow model designs.

  • main branch contains the production-ready codes, containing the latest stable release. All the well-tested release branches should be merged into the main branch.
  • develop branch is a staging area for the next release, containing all the feature branches that are going to be merged. All the well-tested Feature #i branches should be merged into the develop branch.
  • feature #i branch is for adding individual new features. After individual testing of new features, they should be merged into develop branch for further testing. For tracking purposes, we will not delete the branches after merging.
  • release branch is created after the develop branch is ready for a new release. It allows final adjustments and bug fixes before merging into the main branch.
  • hotifx branch is created to address a critical bug in the main branch. It should be merged back into both main and develop.

New issues in the tab Issues on GitHub can be used to report any bugs in the releases.

Pull Requests can be created in the tab Pull requests on GitHub. All the merges must be done through pull requests.

Feel free to do pull requests and contribute to the project!

Built with

TypeScript React Tailwind CSS ESLint

License

This is a course project, code is not for commercial use.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published