A backend application for a forum, made with Node utilizing Nest.js
Welcome to the Forum Application Backend! This project serves as the backend for a forum platform where students can create and manage questions, and instructors can provide answers. The application follows the principles of Clean Architecture to ensure maintainability and scalability.
This project is designed with Clean Architecture principles, promoting separation of concerns and enhancing maintainability. The architecture is divided into three primary layers: Domain, Interface/Gateways, and External.
This layered approach ensures that modifications to external services or infrastructure components do not impact the core business logic, allowing for easier maintenance and scalability.
For handling file uploads, we utilize Cloudflare R2. This service allows for scalable and cost-effective storage of attachments, ensuring that users can seamlessly upload and access files.
To set up the project locally, follow these steps:
Clone the repository:
> git clone https://github.com/matheusbarcc/forum-nest-clean.git
Navigate to the project directory:
> cd forum-nest-clean
Install dependencies:
> pnpm install
Configure your environment variables. Create a .env
and .env.test
files and set up your Database, Cloudflare R2, and JWT keys.
Run the application:
> pnpm start:dev
To run the unit test suite, use the following command:
> pnpm test
To run the e2e test suite, use the following command:
> pnpm test:e2e
This project uses Vitest for testing, providing fast and reliable tests to ensure the quality of the application.
Thank you for checking out the Forum Application Backend!
Feel free to modify any sections or add additional information as needed!