Skip to content

This is a tutorial project designed for the "University Management" It offers a hands-on learning experience in building a robust web application using Mongoose, MongoDB, and Express. The tutorial provides step-by-step instructions, code examples, and best practices to help you enhance your web development skills.

Notifications You must be signed in to change notification settings

rafin8990/university-management

Repository files navigation

university-management

This is the documentation for the Authentication Service component of the University Management System. The Authentication Service provides authentication and authorization functionalities for the three main roles in the system: Admin, Student, and Faculty. It is built using TypeScript, Express.js, Zod validation, and MongoDB.

Functional Requirements

Student

  • Student can login and log out.
  • Student can manage and update their profile.
  • Student can update certain fields.
  • Admin

    1. Admin can log in and log out.
    2. Admin can manage and update their profile.
    3. Admin can only update certain fields.
    4. Admin can manage user accounts: -Change Password

    Faculty

    1. Faculty can log in and log out.
    2. Faculty can manage and update their profile.
    3. Faculty can only update certain fields.

    API End points

    User:

  • POST /users/create-student
  • POST /users/create-faculty
  • POST /users/create-admin
  • Student

  • GET /students
  • GET /students?searchTerm=fr797
  • GET /students?page=1&limit=10&sortBy=gender&sortOrder=asc
  • GET /students/:id
  • PATCH /students/:id
  • DELETE /students/:id
  • Faculty

  • GET /faculties
  • GET /faculties?searchTerm=john
  • GET /faculties?page=1&limit=10&sortBy=gender&sortOrder=asc
  • GET /faculties/:id
  • PATCH /faculties/:id
  • DELETE /faculties/:id
  • Admin

  • GET /admins
  • GET /admins?searchTerm=us88
  • GET /admins?page=1&limit=10&sortBy=gender&sortOrder=asc
  • GET /admins/:id
  • PATCH /admins/:id
  • DELETE /admins/:id
  • Academic Semester

  • POST /academic-semesters/create-semester
  • GET /academic-semesters
  • GET /academic-semesters?searchTerm=fal
  • GET /academic-semesters?page=1&limit=10&sortBy=year&sortOrder=asc
  • GET /academic-semesters/:id
  • PATCH /academic-semesters/:id
  • DELETE /academic-semesters/:id
  • Academic Department

  • POST /academic-departments/create-department
  • GET /academic-departments
  • GET /academic-departments?searchTerm=math
  • GET /academic-departments?page=1&limit=10&sortBy=title&sortOrder=asc
  • GET /academic-departments/:id
  • PATCH /academic-departments/:id
  • DELETE /academic-departments/:id
  • Academic Faculty

  • POST /academic-faculties/create-faculty
  • GET /academic-faculties
  • GET /academic-faculties?searchTerm=com
  • GET /academic-faculties?page=1&limit=10&sortBy=title&sortOrder=asc
  • GET /academic-faculties/:id
  • PATCH /academic-faculties/:id
  • DELETE /academic-faculties/:id
  • Authentication

  • POST /auth/login
  • POST /auth/change-password
  • POST /auth/refresh-token
  • live link

    https://university-management-beta.vercel.app/

    About

    This is a tutorial project designed for the "University Management" It offers a hands-on learning experience in building a robust web application using Mongoose, MongoDB, and Express. The tutorial provides step-by-step instructions, code examples, and best practices to help you enhance your web development skills.

    Topics

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published