Skip to content

thiagomini/edufy

Repository files navigation

Description

Build and Test API Smoke Tests

Nest framework TypeScript starter repository.

Prerequisites

This project requires specific versions of Node.js and pnpm to ensure consistency across all development environments.

Required Versions

  • Node.js: 22.17.1 (LTS)
  • pnpm: 9.15.0 (managed by corepack)

Setup Instructions

Option 1: Automated Setup (Recommended)

Run the setup script that will handle everything for you:

./scripts/setup.sh

Option 2: Automated Setup (Docker)

Ensure you have docker available in your machine. Then, run the setup-docker script:

Run the setup script that will handle everything for you:

./scripts/setup-docker.sh

Alternatively, if you're using Windows, run the powershell script version:

& .\scripts\setup-docker.ps1

Option 3: Manual Setup

  1. Install Node.js 22.17.1

    If you're using fnm (recommended):

    fnm install 22.17.1
    fnm use 22.17.1

    If you're using nvm:

    nvm install 22.17.1
    nvm use 22.17.1
  2. Enable corepack (this manages pnpm version automatically):

    corepack enable
  3. Verify versions:

    node --version  # Should output: v22.17.1
    pnpm --version  # Should output: 9.15.0
  4. Copy .env files:

cp .env.template .env
cp .env.template.test .env.test

The project includes:

  • .nvmrc file for Node.js version management
  • .node-version file for additional compatibility
  • packageManager field in package.json for corepack
  • engines field in package.json to enforce versions

Project setup

$ pnpm install

Running Migrations

Ensure the database is running (you can run it with docker compose up postgres --wait -d). Then, run the script:

pnpm run migrate

Compile and run the project

# development
$ pnpm run start

# watch mode
$ pnpm run start:dev

# production mode
$ pnpm run start:prod

Run tests

# unit tests
$ pnpm run test

# e2e tests
$ pnpm run test:e2e

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages