Skip to content

SRayen/Realtor-NestJs

Repository files navigation

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

Description

REALTOR App - House Data Management

This Nest.js project is a backend service designed to manage house data for sale, serving as an infrastructure similar to the REALTOR app. It leverages various technologies and features to handle data securely and efficiently.

Features

Technologies Used

  • ➡️ PostgreSQL Database: Houses the application's data using Prisma as the ORM to interact with the database.
  • ➡️ Prisma: Provides a type-safe database access layer and schema management.
  • ➡️ Interceptors: Utilized to modify and handle incoming requests and outgoing responses.
  • ➡️ Class Validator: Validates and ensures the correctness of incoming data structures.
  • ➡️ Class Transformer: Used for transforming incoming data into specific DTOs (Data Transfer Objects).
  • ➡️ Guards: Implements guards to control access to routes based on certain conditions.
  • ➡️ Authorization & Authentication: Utilizes JWT (JSON Web Tokens) for secure user authentication and authorization.

Usage

Prerequisites

  • ✔ Node.js and npm installed
  • ✔ PostgreSQL database setup and configured
  • ✔ Set environment variables for database connection and JWT secret

Installation

  1. Clone the repository.
  2. Run npm install to install dependencies.
  3. Set up the environment variables (e.g., database connection, JWT secret) in the .env file.
  4. Run npm run start:dev to start the development server.

Endpoints

  • /home: Manages house data, including creation, retrieval, updating, and deletion.
  • /auth: Handles user authentication and authorization.