본문 바로가기

강의

Node.js 프로젝트를 위한 필수 라이브러리와 도구 설정하기

728x90


Node.js 프로젝트를 개발하면서 로그 관리, 데이터베이스 연결, 타입스크립트 사용 등 다양한 요구사항이 생깁니다. 이 글에서는 프로젝트 관리와 개발을 효율적으로 진행할 수 있는 주요 라이브러리와 도구의 설치 및 설정 방법을 소개합니다.
Morgan 설치로 로그 관리하기
로그 관리는 모든 애플리케이션에 필수적입니다. Node.js에서 **morgan**은 요청 로그를 효과적으로 관리할 수 있게 도와주는 미들웨어입니다.

 

$npm install morgan --save-dev




save-dev 옵션은 이 라이브러리가 개발 환경에서만 필요하다는 것을 나타냅니다.
ts-node 설치로 TypeScript 실행하기
*ts-node*를 설치하면 Node.js 환경에서 TypeScript 파일을 컴파일 없이 바로 실행할 수 있습니다.

$npm install ts-node




이를 통해 개발 과정을 더 빠르고 효율적으로 진행할 수 있습니다.
Express와 Node.js 타입 정의 설치
TypeScript를 사용하면 Express와 Node.js를 더 타입 안전하게 사용할 수 있습니다. 필요한 타입 정의를 설치해봅시다.

$ npm install @types/node
$ npm install @types/express




이 패키지들은 TypeScript를 사용할 때 자동 완성 및 컴파일 시 타입 체크를 제공합니다.
pg 설치로 PostgreSQL 데이터베이스 연동하기
Node.js 애플리케이션에서 PostgreSQL 데이터베이스를 연동하려면 pg 모듈을 설치해야 합니다.

$ npm install pg --save




save 옵션은 이 모듈이 프로덕션 환경에서도 사용됨을 나타냅니다.
TypeORM 설치로 ORM 도구 사용하기
TypeORM은 Node.js ORM으로 TypeScript 및 최신 JavaScript 버전과 호환됩니다. 이를 설치하면 데이터베이스 작업을 더 쉽게 처리할 수 있습니다.

$ npm install typeorm --save




또한, TypeORM 사용에 필요한 데코레이터 기능을 활성화하기 위해 reflect-metadata 모듈도 설치합니다.

$ npm install reflect-metadata --save




TypeORM 설정을 위해 초기화 명령어를 실행합니다.

$ npx typeorm init




도커를 이용한 PostgreSQL 데이터베이스 실행
Docker 공식 웹사이트에서 Docker Desktop을 다운로드하고 설치합니다.
프로젝트 루트 디렉토리에 docker-compose.yml 파일을 생성하고 아래 내용을 추가합니다.

version: "3"
services:
  db:
    image: postgres:latest
    container_name: postgres_typeorm_container
    restart: always
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: "postgres"
      POSTGRES_PASSWORD: "your_password"
    volumes:
      - ./data:/var/lib/postgresql/data




*your_password*를 실제 사용할 데이터베이스 비밀번호로 변경해야 합니다.
도커 컨테이너를 실행합니다.

$ docker-compose up




데이터베이스 관리를 위해 pgAdmin 공식 웹사이트에서 pgAdmin을 다운로드하고 설치합니다.
이제 여러분의 Node.js 프로젝트는 다양한 도구들로 강화되었습니다. 즐거운 코딩 시간 되세요!
nodemon 설치로 개발 서버 자동 재시작하기
개발 중에 코드를 수정하면 서버를 수동으로 재시작해야 변경 사항이 적용됩니다. 이러한 번거로움을 줄이기 위해 **nodemon**을 설치하여 코드가 변경될 때마다 서버가 자동으로 재시작하도록 설정할 수 있습니다.

$ npm install nodemon --save-dev




save-dev 옵션은 이 라이브러리가 개발 환경에서만 필요하다는 것을 나타냅니다.
dotenv 설치로 환경 변수 관리하기
환경 변수는 애플리케이션 설정, 데이터베이스 연결 정보, 비밀 키 등을 저장하는 데 사용됩니다. 이러한 정보를 코드에서 분리하여 보안을 유지하고 설정을 쉽게 변경할 수 있도록 도와주는 dotenv 패키지를 설치합니다.

$ npm install dotenv --save




save 옵션은 이 모듈이 프로덕션 환경에서도 사용됨을 나타냅니다.
Jest와 Supertest 설치로 테스트 환경 구축하기
테스트는 코드가 예상대로 작동하는지 확인하고 버그를 찾는 데 필수적입니다. **jest**는 자바스크립트 테스팅 프레임워크로, **supertest**는 HTTP 요청 테스팅을 돕습니다.

$ npm install jest supertest --save-dev




save-dev 옵션은 이 라이브러리들이 개발 환경에서만 필요하다는 것을 나타냅니다.
이제 여러분의 Node.js 프로젝트는 로그 관리부터 데이터베이스 연결, 타입스크립트, 테스팅에 이르기까지 다양한 도구들로 강화되었습니다. 이러한 도구들을 활용하여 프로젝트를 더욱 효율적으로 개발하고 관리하실 수 있습니다.