Skip to content

WahomeKezia/alc-MMSystem-Backend

Repository files navigation

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

Description

ALC Mentors Management System (MMS) Admin

This is the app for the Mentors Management system admin. MMS is a people management app that enables proper coordination of mentors needed to execute projects, ranging from recruitment to off-boarding.

Prerequisites

The app has the following minimum requirements:

  1. NodeJS v16
  2. Yarn

App Features

The main app features and functionalities are as follows:

  1. Authentication/Authorization
  2. Recruitment
  3. Communication and Engagement
  4. Program Scheduling
  5. Activities Tracking and Reporting
  6. Discussion Forum

There are three groups of user categories namely Admin, Mentor Manager(MM), and Mentor. The expected access levels for this group users is listed as follows:

Admin Category:

  • Login/Logout
  • Create program
  • Add MM
  • Add mentor
  • Label/unlabel MM
  • Label/unlabel mentors
  • See the list of all MM
  • See the list of all mentors
  • Browse MM details
  • Browse mentor’s details
  • Search by name, category, region, program, engagement status
  • Assign/unassign MM to program
  • Assign/unassign mentor to program
  • Archive a program
  • Delete a program
  • Generate program report at interval
  • Download program report
  • Share program report via email
  • Generate MM report
  • Delete MM
  • Delete mentor
  • Receive notification from MM activities
  • Generate MM certificate
  • Generate mentor certificate
  • Approve mentor certificate generated and shared by MM
  • Send broadcast message to all MM
  • Send broadcast message to all mentors
  • Chat 1:1 with any user
  • See the list of mentors’ applicants
  • Set up criteria for selection
  • Generate the list of selected mentors
  • Message the list of selected mentors
  • Generate the list of unselected mentors
  • Message the list of unselected mentors
  • Engage on the discussion forum etc.

How to use this repo

To use and contribute to the project, do the following:

  1. Fork it to your GitHub account.
  2. Clone the repo with the command git clone to your local mechine.
  3. Open a feature branch from the 'develop' branch.
  4. Make sure the name is descriptive for your branch but not too long. Lead with what the the branch is doing eg new feature or bug but follow this pattern type/branch-description eg feature/add-login-functionality.
  5. Ensure your branch is up to date with latest changes before pushing.
  6. Reference the issue you worked on in your PRReference the issue you worked on in your PR.
  7. Open a pull request against the develop branch and request a review from your Team Lead.

Design

  • The design can be find here
  • Work on your Team assigned task eg. Team 1, Team 2 etc.
  • NOTE: Stickly adhere to the style guide on the design, buttons, texts etc.

Creating issue for your Teams

  • Your Issues should take this simple pattern for easy identification by your team members: feature or bug name-mmm-team-1
  • Find a sample here

Installation

$ yarn install

Running the app

# development
$ yarn start

# watch mode
$ yarn dev

# production mode
$ yarn start:prod

Test

# unit tests
$ yarn run test

# e2e tests
$ yarn run test:e2e

# test coverage
$ yarn run test:cov

Contributors

All Contributors

About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •