프로젝트를 진행하며 프론트 서버는 client 디렉토리에서, 백 서버는 루트 디렉토리에서 yarn start를 통해 서버를 실행시키는 도중에 concurrently(👉npm 링크)라는 라이브러리를 이용하여 동시에 실행시킬 수 있다는 것을 알게 되었다.
npm i -D concurrently
yarn add -D concurrently
"scripts": {
"client": "cd client && yarn start",
"server": "cd server && nodemon server.ts", // 실행시키고자 하는 파일을 적으면 됨
"dev": "concurrently --kill-others-on-fail \" yarn server\" \"yarn client\""
}
concurrently는 앞에 명령어부터 순차적으로 실행된다.
필자의 경우에는 "dev" 위에 명시한 client와 server 두 디렉토리에 대한 명령어가 순차적으로 동시에 실행되는 것이다.
참고로 --kill-others-on-fail
옵션은 여러 개중 하나의 명령이 0코드 에러가 아닌 에러로 실패하면 다른 프로세스 또한 실행시키지 않는 것이다.