반복적인 스택 설정(Database, Auth, UI)을 건너뛰고 바로 코딩 시작
Source: Dev.to
문제점
지난 주에 새로운 Next.js 프로젝트를 시작했습니다. 평소 쓰던 스택이 필요했죠:
- drizzle – 데이터베이스
- better‑auth – 인증
- shadcn – UI
- TanStack Query – 데이터 패칭
그 과정은 이랬습니다:
- drizzle 설치, 스키마 생성, 클라이언트 설정
- better‑auth 설치, user/session/account 테이블 생성
- better‑auth 를 drizzle 스키마에 연결
- shadcn 설치,
components.json설정 - 테마 프로바이더 구성
- TanStack Query 를 적절한 프로바이더와 함께 설정
- TypeScript 경로 디버깅에 20분 소요
- 인증 테이블을 스키마에 추가하는 걸 깜빡했다는 걸 깨달음
- 90분 뒤에야 결국 작동
이와 같은 통합을 4개월 동안 6번이나 했습니다. 같은 스택. 같은 디버깅. 같은 시간 낭비.
내가 만든 해결책
create-faster 는 선택한 스택이 이미 통합된 프로젝트를 생성합니다:
bunx create-faster
인터랙티브 모드
스택을 선택하세요:
- 프레임워크: Next.js, Expo, Hono, TanStack Start
- 데이터베이스: Postgres, MySQL
- ORM: Drizzle, Prisma (자동 생성 인증 테이블 포함)
- UI: shadcn, nativewind, 테마 지원 등
- 기능: Better Auth, TanStack Query/Form, MDX, PWA 등
- 패키지 매니저: bun, pnpm, npm
비‑인터랙티브 모드
매번 같은 설정을 사용합니다:
bunx create-faster myapp \
--app myapp:nextjs:shadcn,better-auth,tanstack-query \
--database postgres \
--orm drizzle \
--git --pm bun
멀티‑앱 모노레포
웹 + 모바일이 데이터베이스를 공유하도록:
bunx create-faster mysaas \
--app web:nextjs:shadcn,better-auth \
--app mobile:expo:nativewind \
--database postgres \
--orm drizzle \
--git --pm bun
자동으로 Turborepo 를 생성합니다. 두 앱 모두 공유 db 패키지를 사용하고, 인증 테이블은 이미 drizzle 스키마에 포함됩니다.
실제로 생성되는 내용
단순 파일이 아니라 동작하는 통합입니다.
drizzle + better‑auth
- drizzle 스키마에 User, session, account 테이블 포함
- 데이터베이스 클라이언트 설정 완료
- drizzle 를 가리키는 Auth 설정
- 타입‑안전 쿼리 바로 사용 가능
shadcn + next‑themes
components.json이 설정된 shadcn 설치- 앱 레이아웃에 테마 프로바이더 삽입
- 다크‑모드 토글 컴포넌트 준비
- Tailwind 설정 완료
TanStack Query + Next.js
- Query 클라이언트 설정
- 앱 레이아웃에 프로바이더 삽입
- 선택 시 Devtools 준비
- 예시 query 훅 제공
모노레포용
- 적절한 파이프라인을 갖춘 Turborepo
- 모든 앱이 공유
db패키지 사용 - TypeScript 경로 설정
- 단일 설치 명령어
재현 가능성 기능
생성 후, 정확히 같은 프로젝트를 다시 만들 수 있는 명령을 제공합니다:
create-faster mysaas \
--app web:nextjs:shadcn,better-auth \
--app mobile:expo:nativewind \
--database postgres \
--orm drizzle \
--git --pm bun
저장해 두었다가 나중에 실행하면 매번 동일한 통합 스택을 얻을 수 있습니다.
왜 만들었는가
같은 통합을 계속 재구축하고 있었기 때문입니다:
- drizzle 스키마에 better‑auth 테이블 추가
- shadcn 에 테마 프로바이더 연결
- TanStack Query 를 Next.js 에 연결
- 웹 + 모바일용 Turborepo 구성
매번 약 90분씩 같은 작업을 반복했고, 설정이 조금씩 달라져 나중에 버그가 발생했습니다.
이제는 한 번의 명령으로 일관된, 바로 동작하는 스택을 얻을 수 있습니다.
앞으로의 계획
현재 지원되는 내용
- 프레임워크: Next.js, Expo, Hono, TanStack Start
- 데이터베이스: Postgres, MySQL (drizzle 또는 Prisma)
- 인기 모듈: shadcn, better‑auth, TanStack Query/Form 등
- 모노레포: 멀티‑앱 프로젝트용 자동 Turborepo
로드맵
- 더 많은 프레임워크 (Remix, Astro)
- 추가 통합 (tRPC, i18n, Stripe)
- 템플릿 예시 (대시보드, dApp, SaaS)
- 저장된 프리셋
사용해 보기
bunx create-faster
- GitHub:
- Docs:
- npm:
MIT 라이선스. PR 환영합니다.
토론
어떤 스택 통합을 재구축하는 데 지치셨나요? 무엇이 더 유용할까요?