2026년 기준 현행 명령어 / 도구 평가 & 최적 대안 연구 · 생성일: 2026-05-24
| 우선순위 | 액션 | 현재 도구 | 대안 | 마이그레이션 난이도 | 기대 효과 |
|---|---|---|---|---|---|
| HIGH | 타입체크 엔진 교체 | tsc | tsgo (TS 7.0 Beta) | Easy | 10× 속도, 메모리 50% 절감 |
| MEDIUM | Turborepo 태스크 캐싱 도입 | just + shell scripts | Turborepo 2.x | Medium | CI 시간 68–74% 절감 |
| MEDIUM | 패키지 매니저 통일 | yarn + bun | pnpm 10 (FE) + bun (BE) | Easy | monorepo 일관성, phantom-dep 차단 |
| MEDIUM | Frontend 컴포넌트 유닛테스트 | bun test (BE only) | Vitest 3.x (admin) | Easy | 브라우저 모드 실 DOM 테스트 |
| LOW | Redis → Dragonfly | Redis 7.4 | Dragonfly | Easy | 멀티코어, 메모리 25% 절감 |
| LOW | i18n 번들 최적화 | i18next + CSV | Paraglide-JS | Hard | 번들 33KB → 2KB, 타입 안전 |
| STAY | 현행 유지 권장 | Vite 8 Biome 2.3 Playwright Bun build BullMQ | — | 이미 2026 최선 | |
npm i -D @typescript/native-preview적용 방법: package.json의 type-check 스크립트에서 tsc --noEmit → tsgo --noEmit 변경. Beta이므로 선언 emit 일부 엣지케이스 주의.
just는 계속 사용하되, lint/typecheck/build/test는 turbo run으로 위임. GitHub Actions에서 --filter=[HEAD^1]으로 변경된 패키지만 실행.
백엔드 bun install은 유지 (0.8s, 최적). admin만 yarn → pnpm 전환. workspace:* 프로토콜 지원으로 내부 패키지 참조 안정화.
현재 admin/에 별도 유닛 테스트가 없음. Vitest 3.x Browser Mode는 Playwright를 렌더 엔진으로 사용해 실 브라우저에서 React 컴포넌트를 테스트합니다.
elysia-server는 bun test 유지. admin에만 Vitest 추가. API는 Jest/bun test와 거의 동일해 진입 장벽 낮음.
Dragonfly는 Redis 프로토콜 완전 호환 drop-in replacement. BullMQ와 완전 호환됩니다.
현재 Redis가 비용 또는 성능 병목이 아니라면 낮은 우선순위. 프로덕션 Redis 메모리 사용량이 증가할 때 검토.
주의: 현재 CSV 기반 번역가 워크플로우가 있어 마이그레이션 비용이 큼. 번역팀이 CSV를 의존한다면 현행 유지 권장. 번들 크기나 타입 안전성이 실제 문제가 될 때 재검토.
Vite 8은 Rolldown(Rust) 번들러 내장으로 Turbopack 대비 성능 격차 해소. Turbopack은 Next.js 전용. Biome은 ESLint+Prettier 조합보다 빠르고 단순. Drizzle ORM도 2026 TS ORM 최선.
| 카테고리 | 명령어 | 설명 | 위치 |
|---|---|---|---|
| 개발 시작 | just dev | admin + elysia-server 동시 실행 | justfile |
| 개발 시작 | just setup | 초기 환경 설정 (prereqs, .env, Docker, migrate) | justfile |
| CI 검사 | sh send-ci.sh | lint + type-check + build (full) | 루트 |
| CI 검사 | sh send-ci.sh --verbose | 전체 스트리밍 (디버깅용) | 루트 |
| Admin 검사 | yarn check | biome + tsc + CSRF/i18n/localstorage 검증 | admin/ |
| Admin 빌드 | yarn build | biome check + i18n:build + vite build | admin/ |
| Server 빌드 | bun run build | biome + tsc + bun build (prebuild: check:routes) | elysia-server/ |
| 라우트 검증 | bun check:routes | 모든 라우트에 auth macro 선언 검증 | elysia-server/ |
| DB 마이그레이션 | bun db:generate | Drizzle 스키마 → SQL 생성 (SHA-256 추적) | elysia-server/ |
| DB 마이그레이션 | bun db:migrate | drizzle-kit migrate 실행 | elysia-server/ |
| i18n | yarn i18n:scan | 소스 스캔 → CSV key merge | admin/ |
| i18n | yarn i18n:build | CSV → JSON 변환 | admin/ |
| 테스트 | bun test | 유닛 테스트 (양 워크스페이스) | admin/ & elysia-server/ |
| 테스트 | cd e2e && npm run bootstrap | E2E Playwright 전체 파이프라인 | e2e/ |
| IAM 동기화 | bun sync:fe-iam | 백엔드 IAM 상수 → 프론트 동기화 | elysia-server/ |
| OpenAPI | yarn openapi:generate | 로컬 서버 스펙 → TypeScript 타입 생성 | admin/ |
| DB 도구 | bun db:studio | Drizzle Studio (DB GUI) | elysia-server/ |
| DB 백업 | bun db:backup | Docker 기반 DB 백업 | elysia-server/ |