/ph-university

PH University is a comprehensive online class management system designed to streamline and enhance the educational experience for both students and faculty. Leveraging modern technologies, this platform provides a robust server-side infrastructure to support various features crucial for effective online learning.

Primary LanguageTypeScript

PH University

PH University is a comprehensive online class management system designed to streamline and enhance the educational experience for both students and faculty. Leveraging modern technologies, this platform provides a robust server-side infrastructure to support various features crucial for effective online learning.

Table of Contents

Getting Started

To get started with PH University, follow the installation instructions in the project's README. Ensure you have Node.js, npm, and MongoDB installed. Feel free to contribute, report issues, or suggest enhancements to make PH University an even more powerful tool for online education!

Prerequisites

Before you begin, ensure you have the following installed:

Installation

  1. Clone the repository:
 git clone https://github.com/your-username/your-project.git
  1. Navigate to the project directory:
cd ph-university
  1. Install dependencies:
 npm install

Scripts

npm start:prod

Starts the production server using nodemon. It monitors changes in the ./dist directory and restarts the server.

npm start:prod

npm start:dev

Starts the development server using ts-node-dev. It restarts the server on file changes and transpiles TypeScript on the fly.

npm run start:dev

npm build

Builds the TypeScript code using the TypeScript compiler (tsc). Outputs the transpiled code to the ./dist directory.

npm run build

npm lint

Runs ESLint to lint TypeScript files in the ./src directory.

npm run lint

npm lint:fix

Runs ESLint with the --fix option to automatically fix linting issues.

npm run lint:fix

npm prettier Formats code using Prettier based on the configuration in .prettierrc file.

npm run prettier

Linting and Formatting

Linting is performed using ESLint, and code formatting is done with Prettier. To lint the project:

npm run lint

To automatically fix linting issues:

npm run lint:fix

To format code using Prettier:

npm run prettier

Dependencies

  • bcrypt
  • cors
  • dotenv
  • express
  • mongoose
  • zod

Dev Dependencies

  • @types/bcrypt
  • @types/cors
  • @types/express
  • @typescript-eslint/eslint-plugin
  • @typescript-eslint/parser
  • eslint
  • eslint-config-prettier
  • prettier
  • ts-node-dev
  • typescript