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.
- Getting Started
- Prerequisites
- Installation
- Scripts
- Linting and Formatting
- Testing
- Dependencies
- License
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!
Before you begin, ensure you have the following installed:
- Clone the repository:
git clone https://github.com/your-username/your-project.git
- Navigate to the project directory:
cd ph-university
- Install dependencies:
npm install
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 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
- bcrypt
- cors
- dotenv
- express
- mongoose
- zod
- @types/bcrypt
- @types/cors
- @types/express
- @typescript-eslint/eslint-plugin
- @typescript-eslint/parser
- eslint
- eslint-config-prettier
- prettier
- ts-node-dev
- typescript