Skip to content

luth404/forum-api

Repository files navigation

Forum API

A forum API developed with NestJS, applying Clean Architecture and Domain-Driven Design (DDD) concepts.

About the Project

This project is a RESTful API for a forum platform. It was built with the goal of studying and applying robust and scalable software architecture patterns, such as Clean Architecture, to separate system responsibilities, and Domain-Driven Design, to model the software around the business domain.

Technologies Used

The following are the main technologies and libraries used in the API's development:

Getting Started

Follow the steps below to set up and run the project in your local environment.

Prerequisites

  • Node.js (version specified in the .nvmrc file)
  • Docker and Docker Compose
  • A package manager like NPM or Yarn

Installation and Execution

  1. Clone the repository:

    git clone <your-repository-url>
    cd <repository-name>
  2. Install dependencies:

    npm install
  3. Set up environment variables:

    • Copy the .env.example file to a new file named .env.
    • Fill in the variables in the .env file with your configurations (database, secrets, etc.).
    cp .env.example .env
  4. Start the database with Docker:

    • Make sure Docker is running on your machine.
    docker-compose up -d
  5. Run Prisma migrations:

    • This command will create the tables in the database based on your schema.
    npx prisma migrate dev
  6. Start the application in development mode:

    npm run start:dev

After these steps, the API will be running and ready to receive requests.

Testing

To run the application's tests, use the following command:

npm run test

About

This project is a Forum API, developed using concepts such as Clean Architecture and Domain-Driven Design.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors