(결제 테스트) 나만의 웹 서비스 만들기 1편 - 백엔드
이 포스팅에서는 나만의 웹 서비스를 만들 때 필요한 것들을 총정리합니다. 현재 결제 테스트이며 프로그래밍 분야의 지식 콘텐츠를 판매하는 예입니다.
서비스를 만들며 배웠던 것들을 이야기합니다. node, express 서버, moongo db, react 를 사용해서 나만의 서비스를 만들어 봅니다. 내가 서비스를 혼자서 만들 수 있다면 정말 큰 능력을 가지게 되는 것입니다. 혼자서 회사를 만들 수 있는 것이니깐요. 마크 저커버그는 이렇게 이야기 했습니다.
코딩을 하는 능력을 배우면 아무도 당신을 막을 수 없을 것이다.
(그리고 실제로 그를 막을 수 있는 사람은 없게 되었다는…;;)
이 포스팅은 나만의 웹 서비스 만들기 1편으로 백엔드에 대해서 다룹니다. 2편에서는 리액트 넥스트로 프론트 엔들 만들기가 다루어질 예정입니다. 이 포스팅에서 다루는 것은 다음과 같습니다.
javascript에 대한 기본적인 지식이 있으신 분이 보시면 좋습니다.
express로 백엔드 서버 만들기 ( typescript)
REST API
JWTs & refresh tokens
Node.js
TypeScript
MongoDB with Mongoose
프로젝트 만들기
빈 폴더에서 다음과 같이 입력해서 Node.js 프로그램을 첫 세팅하겠습니다.
yarn init
그 다음 typescript를 설치하고 초기화 해주겠습니다.
yarn add typescript
npx tsc --init
그 다음 nodemon.json 파일을 만들고 다음과 같이 입력해 줍니다.
{
"restartable": "rs",
"ignore": [".git", "node_modules/", "dist/", "coverage/"],
"watch": ["src/"],
"execMap": {
"ts": "node -r ts-node/register"
},
"env": {
"NODE_ENV": "development"
},
"ext": "js,json,ts"
}
그 다음 package.json을 다음과 같이 업데이트해서 실행 스크립트에 포함되도록 합니다.
"scripts": {
"dev": "nodemon --config nodemon.json src/app.ts"
},
이 스크립트는 src/app.ts 가 변경될 때 마다 nodemon이 반영할 수 있도록 해줍니다.
그 다음 필요한 패키지를 설치하겠습니다.
yarn add express yup config cors express mongoose pino pino-pretty dayjs bcrypt jsonwebtoken lodash nanoid nodemon