Skip to content

Latest commit

 

History

History
88 lines (81 loc) · 1.83 KB

README.md

File metadata and controls

88 lines (81 loc) · 1.83 KB

MEP Digital

Website to manage elementary school courses built with Node.js backend and React frontend. With email features to get list of students as pdf and receive registration password.

Roles

Admin

  • create/read/update/delete courses/teachers/students
  • assign teachers/students to courses

Teacher

  • create/read/update/delete course news/assignments
  • create/read course chat messages
  • request an email with the list of course students as pdf

Student

  • read course news/assignments
  • create/read course chat messages
  • review course teacher

MongoDB Collections Schemas

Admin

{
 email: string,
 password: string
}

Student

{
 id: string,
 email: string,
 password: string,
 name: string,
 lastname: string,
 grade: number
}

Teacher

{
 id: string,
 email: string,
 password: string,
 name: string,
 lastname: string,
ratings: [
 {
  student: ObjectId
  rating: number
 }
 ]
}

Course

{
 id: string,
 name: string,
 grade: number,
 teacher: ObjectId,
 students: [ObjectId],
news: [
 {
  title: string,
  message: string,
  date: string,
 }
 ],
schedule: [
 {
  day: number,
  startHour: number,
  startMinutes: number,
  endHour: number,
  endMinutes: number,
 }
 ],
assignments: [
 {
  title: string,
  description: string,
  submitDate: string,
 }
 ],
chat: [
 {
  user: ObjectId,
  message: string,
  userType: string,
 }
 ]
}