Post

[Discord Bot] 프로젝트 생성 #1

1. 환경 설정

디스코드 봇을 만들 때 사용되는 Discord.jsNode.js 의 모듈이므로 Node.js를 설치해 줘야 한다. 아래 버튼을 누르면 Node.js설치 페이지로 이동된다. 버전은 LTS버전을 설치한다.

다운로드

Node.js를 설치한 후 프로젝트를 생성할 폴더를 만든다.

image


2. 프로젝트 설정

단축키 Ctrl + ` 를 눌러 터미널을 열고 아래 명령어를 입력해 Node.js 패키지를 생성한다.

1
npm init -y

그 후 프로젝트에 필요한 모듈을 패키지에 설치해 준다.

  • discord.js: 디스코드 봇을 구동하기 위해 필요한 모듈
  • dotenv: 디스코드 봇이 로그인할 때 필요한 토큰이나 프로젝트에서 사용하는 값을 관리해주는 환경변수 모듈
  • @types/node: Typescript로 작성하기 위해 필요한 모듈
  • ts-node: Typescript로 작성된 코드를 컴파일과 동시에 실행시켜주는 모듈
  • typescript: Typescript로 작성하기 위해 필요한 모듈

Windows

1
2
npm i discord.js dotenv
npm i -D @types/node ts-node typescript

MacOS

1
2
sudo npm i discord.js dotenv
sudo npm i -D @types/node ts-node typescript

위 명령어를 다 입력하고 나면 package.jsondependenciesdevDependencies가 다음과 같이 수정된 것을 볼 수 있다. (버전은 동일하지 않아도 괜찮다.)

1
2
3
4
5
6
7
8
9
10
11
{
    "dependencies": {
        "discord.js": "^14.13.0",
        "dotenv": "^16.3.1"
    },
    "devDependencies": {
        "@types/node": "^20.6.2",
        "ts-node": "^10.9.1",
        "typescript": "^5.2.2"
    }
}

이제 ts-nodeTypescript를 컴파일 할 때 참고할 설정 파일을 생성해야 한다.

폴더 최 상단에 tsconfig.json를 생성 후 아래 코드를 붙여넣는다.

1
2
3
4
5
6
7
8
9
10
{
    "compilerOptions": {
        "target": "es2016",
        "module": "commonjs",
        "strict": true,
        "esModuleInterop": true,
        "skipLibCheck": true,
        "forceConsistentCasingInFileNames": true
    }
}

편의를 위해 소스코드를 저장할 폴더 srcdotenv모듈에서 사용할 환경변수를 저장할 파일 .env를 만든다.

  • src/: 소스코드를 저장할 폴더
  • .env: 환경변수를 저장할 파일

만약 Github에 올릴 프로젝트라면 아래 설정도 필수로 해야한다. .gitignore파일을 생성하지 않는다면, Github에 노출되면 안되는 토큰 정보들이 올라갈 수 있기 때문에 위험하다.

우선, .gitignore 파일을 생성 후 아래 코드를 붙여넣는다.

1
2
.env
/node_modules

위 설정을 모두 마치면 프로젝트 생성 후 환경 설정은 끝이 난다.

This post is licensed under CC BY 4.0 by the author.