Skip to content

This repository hosts the backend server for our Academic Administration Solution, a comprehensive system designed to optimize administrative workflows, foster effective communication, and support seamless academic operations for students, faculty, and administrators.

License

Notifications You must be signed in to change notification settings

fahimahammed/academic-administration-solution-server

Repository files navigation

AAS Logo

Academic Administration Solution

Server Version Build Status PostMan Documentation License

Welcome to the Academic Administration Solution server repository! This server is an integral part of our university management system designed to streamline administrative processes, enhance communication, and facilitate academic operations for students, faculty, and administrators.

Getting Started

To set up the server locally, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/fahimahammed/academic-administration-solution-server.git
  2. Install Dependencies:

    cd academic-administration-server
    yarn install
    
  3. Configure Environment Variables:

    • Create a .env file in the root directory.
    • Define the following environment variables:
      NODE_ENV=development
       PORT=<PORT>
       DATABASE_URL=<DATABASE_URL>
       USER_DEFAULT_PASS = <PASSWORD>
       JWT_SECRET=<SECRET>
       JWT_EXPIRES_IN=<JWT_EXPIRES_IN>
       JWT_REFRESH_SECRET=<JWT_REFRESH_SECRET>
       JWT_REFRESH_EXPIRES_IN=<JWT_REFRESH_EXPIRES_IN>
       PASS_RESET_TOKEN_EXPIRES_IN=<PASS_RESET_TOKEN_EXPIRES_IN>
       CLOUD_NAME=<CLOUD_NAME>
       API_KEY=<API_KEY>
       API_SECRET=<API_SECRET>
       FORGOT_PASS_RESET_LINK=<FORGOT_PASS_RESET_LINK>
       EMAIL=<EMAIL>
       APP_PASS=<APP_PASS>
       STORE_ID=<STORE_ID>
       STORE_PASSWORD=<STORE_PASSWORD>
       PAYMENT_API=<PAYMENT_API>
       VALIDATION_API=<VALIDATION_API>
       SUCCESS_URL=<SUCCESS_URL>
       CANCEL_URL=<CANCEL_URL>
       FAILED_URL=<FAILED_URL>
      
  4. Database Setup:

    • Ensure that you have a compatible database system (e.g., PostgreSQL) installed and running.
    • Update the DATABASE_URL variable in .env with your database connection string.
  5. Run the Server:

    yarn dev
    

Technology Stack

  • Prisma ORM: Modern database toolkit for TypeScript and Node.js.
  • TypeScript: Typed superset of JavaScript that compiles to plain JavaScript.
  • JWT: Secure method for authentication and generating access tokens.
  • Node.js: Server-side JavaScript runtime.
  • Express.js: Web application framework for Node.js.
  • Node Mailer: Module for sending emails from Node.js applications.
  • Cloudinary: Cloud-based image and video management platform.
  • bcrypt: Password hashing library for securing user credentials.
  • Multer: Middleware for handling multipart/form-data for file uploads.

ERD

ERD

Contributors

About

This repository hosts the backend server for our Academic Administration Solution, a comprehensive system designed to optimize administrative workflows, foster effective communication, and support seamless academic operations for students, faculty, and administrators.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published