QDD 1-1. Yarn Berry & Next.js 설치, ESLint & Prettier 설치

2023. 4. 25.·👨‍💻 프로젝트 경험/Toy

📍Q1. Yarn Berry로 프로젝트를 시작하려면?

일반적인 Yarn은 클래식 (1.X)

 

Yarn Berry 는  2.X 버전 이상을 말한다

 

- Node.js 18.15.0

- Yarn 3.5.0 기준

yarn init -2

 

생성된 프로젝트 구조가 꽤 달라서 당황..

Yarn Berry의 핵심인 zero-install 및 plug-n-play 에 대해서 나중에 알아봐야겠다

 

zero-install 덕분에

- 커밋, 푸쉬하는데 시간이 오래 걸림 ㅠㅠ

- zero-install 기능을 해제하려면 .yarn/cache 를 .gitignore에 추가하면 됨. 단 이는 node_modules 처럼 초기에 yarn install 필요

(현재는 !가 붙어서 gitignore의 부정 상태)

⭐zero-install 덕분에 패키지 버전을 신경쓰지 않고 코드 실행이 가능하니 일단  프로젝트 종료 후 결정하자!

 

 

📍Q2. Yarn Berry에서 Next.js를 설치하려면?

yarn add next react react-dom
yarn add -D typescript

 

 

처음 3개 패키지 설치할 때 시간이 2분 넘게 걸려서 당황..

 

node_modules 을 사용하지 않는다.

 

📍Q3. Next 프로젝트 구성하려면?

- package.json 에 script 추가

- 루트 pages 와 public 폴더 추가

- pages/index.tsx에 간단한 컴포넌트 추가하고 yarn dev 실행

 

Next가 똑똑한 점

1. typescript를 감지하고 알아서 tsconfig.json을 생성해줌

2. @types/node @types/react 알아서 깔아줌 (dev에)

- yarn 인것도 감지해서 yarn으로 깔아줌!

 

📍Q4. Next.js 에서 ESLint와 Prettier 사용하려면?

package.json 에서 next lint 명령어를 확인하고

"scripts": {
  "lint": "next lint"
}

 

yarn lint를 실행해보면, npm에서 CLI로 eslint를 활성화하는 것처럼 next가 알아서 eslint config를 시작한다

그리고 CLI에서 recommend인 strict 설정을 선택한다

 

pretter, eslint, next 를 통합하기 위해 아래 패키지를 설치

yarn add -D @next/eslint-plugin-next eslint-config-prettier prettier

 

package.json

{
  "extends": ["next", "prettier", "next/core-web-vitals", "plugin:@next/next/recommended"]
}

 

 

 

📍참고

Yarn Berry (Yarn 3.X) 설치

https://yarnpkg.com/getting-started/install

 

Installation

Yarn's in-depth installation guide.

yarnpkg.com

 

제로 인스톨

https://yarnpkg.com/features/zero-installs

 

Zero-Installs

An overview of Yarn's Zero-Installs, a feature provided by PnP which enables storing all dependencies inside the project's repository.

yarnpkg.com

 

Next.js 프로젝트 시작

https://nextjs.org/docs

 

Getting Started | Next.js

Get started with Next.js in the official documentation, and learn more about all our features!

nextjs.org

 

Next.js ESLint 설치

https://nextjs.org/docs/basic-features/eslint

 

Basic Features: ESLint | Next.js

Next.js provides an integrated ESLint experience by default. These conformance rules help you use Next.js in the optimal way.

nextjs.org

 

'👨‍💻 프로젝트 경험/Toy' 카테고리의 다른 글
  • QDD 1-3. useRouter, API Routes, getStaticProps, getStaticPaths
  • QDD 1-2. Next.js pages 기능 & Styled-components 규칙
  • QDD 1-0. Intro: Academia
  • [번역] QDD로 새로운 프레임워크, 언어를 빠르게 배우기
지식물원
지식물원
지식이 자라는 식물원!
  • 지식물원
    지식물원
    지식물원
  • 전체
    오늘
    어제
    • 분류 전체보기 (510)
      • 🎨 프론트엔드 공부 (247)
        • JS & TS (86)
        • HTML & CSS (22)
        • React & Next (49)
        • Vue & Nuxt (22)
        • 기타 (68)
      • 🤓 기술 학습 & 공부 기록 (116)
        • Node.js (0)
        • Python (37)
        • 백엔드 (0)
        • 딥러닝 (1)
        • 컴퓨터 일반 (72)
        • 개발 인프라 (6)
      • 👨‍💻 프로젝트 경험 (6)
        • Work (0)
        • Toy (6)
      • ⚙️ 개발 팁 & 노하우 (21)
        • 프론트엔드 (6)
        • 기타 (15)
      • ☕️ 커리어 & 인터뷰 준비 (88)
        • 코딩 테스트 (88)
      • 📰 기술 트렌드 & 생각 정리 (4)
      • 📚 기타 (25)
        • 마케팅 (15)
        • 비개발서적 (10)
  • 블로그 메뉴

    • 태그
  • 링크

  • 공지사항

    • 모바일 접속 시 코드 하이라이팅 깨질 때
  • 인기 글

  • hELLO· Designed By정상우.v4.10.3
지식물원
QDD 1-1. Yarn Berry & Next.js 설치, ESLint & Prettier 설치
상단으로

티스토리툴바