라이브러리 선택 기준

Next.js 라이브러리 역할별 선택

유명한 패키지를 모두 넣기보다 프로젝트 기능의 빈자리를 채우는지와 App Router 궁합을 함께 봅니다.

로그인 계층

인증 도구 선택 기준

Auth.js처럼 세션, provider, callback 처리가 갖춰진 도구를 고르고 직접 구현 범위를 줄입니다.

클라이언트 상태

상태 관리 범위 판단

Zustand, Redux Toolkit, URL 상태 중 어디에 둘지 데이터 출처와 공유 범위로 결정합니다.

화면 기반

UI 컴포넌트 접근성 확보

shadcn/ui나 Radix UI로 포커스, 키보드 조작, aria 패턴이 갖춰진 부품을 가져옵니다.

데이터 접근

ORM/ODM 모델링 기준

Prisma, Drizzle, Mongoose 중 관계형 구조, 문서 구조, 마이그레이션 방식에 맞는 선택지를 고릅니다.

라이브러리 책임 경계

라이브러리 책임이 겹치지 않게 고릅니다

상태 관리와 서버 캐시, 폼 검증과 스키마 검증처럼 역할이 닮은 도구는 경계를 먼저 정합니다.

라이브러리 범주

상태 관리Zustand, Redux Toolkit 등 클라이언트 상태 범위를 판단합니다.
UI 컴포넌트shadcn/ui나 Radix UI로 접근성과 스타일 기반을 확보합니다.
ORM/ODMPrisma, Drizzle, Mongoose로 데이터 모델과 쿼리 방식을 정합니다.