2025년 10월 ViteConf(암스테르담)에서 Evan You가 Vite+를 공개했다. Vite+는 기존 Vite 위에 올라가는 “드롭인 업그레이드형 통합 툴체인”으로, dev/build만 하던 Vite에 새 CLI 명령들을 붙여 개발·테스트·린트·포매팅·라이브러리 번들·모노레포 러너·GUI까지 한 번에 묶은 도구다.
아래는 원문 내용을 기반으로 한 구조화된 정리다.
1. Vite+ 한 줄 정의
“Vite를 기반으로 한, JavaScript용 통합 Rust 툴체인 + 상위 상업 레이어”
- npm에서 설치하는 CLI 도구 (Vite처럼 쓰지만, 더 많은 명령 제공)
- 기존
vite dev, vite build는 그대로 두고, 그 위에 다음 명령을 추가:
vite new
vite test
vite lint
vite fmt
vite lib
vite run
vite ui
각 명령은 이미 널리 쓰이는 오픈소스 도구(Vitest, Oxlint, Rolldown, tsdown 등)를 기반으로 하면서, Vite+ 안에서 일관된 UX와 설정 방식으로 통합된다.
2. 각 CLI 명령이 하는 일
2-1. vite new – 프로젝트/모노레포 스캐폴딩
- 새 프로젝트/모노레포 생성용 명령.
- Vite+에 최적화된 디렉터리 구조/설정으로 스타터를 만들어 줌.
- 단순 템플릿 생성뿐 아니라:
- 모노레포에 새 패키지 추가
- 커스텀 코드 제너레이터 실행
같은 코드 생성 플로우도 지원.
2-2. vite test – Vitest 기반 테스트 러너
- 내부적으로 Vitest를 사용.
- 특징:
- Jest 호환 API (테스트 작성 경험 유지)
- 앱과 동일 설정 기반으로 바로 테스트 실행
- 브라우저 모드, 샤딩, 시각적 회귀 테스트 등 포함
→ 사실상 “Vite 프로젝트에 최적화된 Vitest 프리셋 + CLI 통합 버전”이라고 보면 된다.
2-3. vite lint – Oxlint 기반 초고속 린터
- Oxlint(Rust로 구현된 JS/TS 린터) 기반.
- 스펙:
- ESLint 호환 룰 600+개 내장
- ESLint 대비 최대 100배 빠른 성능 (Rust + 최적화된 구현)
- 타입 인식(type-aware) 린팅 지원
- 룰/플러그인을 JS로 작성 가능 + ESLint 호환 API
→ “ESLint 설정 지옥 + 느린 속도”를 줄이고, ESLint 생태계를 최대한 재사용하는 방향.
2-4. vite fmt – Oxfmt 기반 코드 포매터
- Oxfmt(곧 출시 예정) 기반.
- 목표:
- Prettier와 99%+ 호환
- 하지만 Prettier보다 라인 래핑 등 세부 제어를 더 많이 제공
- 결국 “Prettier처럼 쓰되, 더 빠르고 세밀한 컨트롤이 가능한 Rust 포매터”를 지향.
2-5. vite lib – 라이브러리 번들링
- tsdown + Rolldown 조합으로 라이브러리 번들.
- 특징:
- 라이브러리용 번들 환경(best practice)이 기본 내장
- TypeScript 정의 파일(DTS) 생성 시
isolatedDeclarations 기반 초고속 DTS 번들 생성
→ 라이브러리 개발자가 매번 Rollup/Webpack 설정을 직접 짜지 않아도 되도록 표준 패턴을 강제하는 역할.
2-6. vite run – 캐싱 내장 모노레포 태스크 러너
- 모노레포를 위한 태스크 러너 + 캐시 시스템.
- 컨셉:
- “Turborepo 같은 것인데, 캐시 무효화 규칙을 직접 정의하지 않아도 되는 버전”
- 구현:
- 태스크 입력(input) 자동 추론으로 캐시 키 생성
- 대부분의 태스크가 명시적인 설정 없이도 캐시 가능
- 수동 설정보다 더 세밀한 캐싱이 가능한 경우도 있다고 언급
- 브라우저/GPU 기반이 아니라 Vite+용 GUI 툴.
- 제공 기능:
- 모듈 resolve / transform 과정 시각화
- 번들 크기 분석
- tree-shaking 효과 분석
- React/Vue 같은 프레임워크별 Devtools와 통합
→ “Vite Devtools + 번들 분석 + 프로파일링”을 하나의 UI에서 보게 하는 느낌.
3. Vite+의 기술 기반: 전부 Rust로 짜인 컴파일러 스택
Vite+ 커맨드들은 모두 공유된 Rust 기반 컴파일러 스택 위에 올라간다.
Rust로 구현된 구성 요소:
- 파서(parser) – Oxc
- 리졸버(resolver)
- 트랜스포머(transformer)
- 미니파이어(minifier)
- 번들러(bundler) – Rolldown
특징:
- 성능 집착형 최적화 (파서 ~ 번들러까지 전체 스택 튜닝)
- 이미 여러 회사에서 실제로 사용 중:
- Framer, Linear, Atlassian, Shopify 등
parse, transform 같은 유틸을 API로 노출
→ 팀이 직접 커스텀 코드 모드/검사/변환 도구를 만들 수 있음.
4. Vite+가 풀고자 하는 문제: JS 툴체인의 분열과 조직 규모 문제
Evan의 정리 기준, 해결 대상은 명확하다.
4-1. 문제 1: 파편화된 툴체인
- 팀·레포마다:
- dev 서버: Vite/Next/CRA/커스텀
- 빌드: Vite/Rollup/Webpack/esbuild
- 테스트: Jest/Vitest/Playwright
- 린트: ESLint + 플러그인 조합
- 포맷팅: Prettier/Biome 등
- 모노레포 관리: Turborepo/Nx/mage/커스텀 스크립트…
→ 의존성과 버전 조합이 서로 다르고, 보안 리뷰·업그레이드를 팀마다 따로 해야 하는 상황.
4-2. 문제 2: 대규모 조직·모노레포에서의 비용
- 여러 팀이 서로 다른 도구 세트를 쓰면:
- 공통 CI 파이프라인 설계가 어려워짐
- 패키지 업데이트/보안 이슈 대응이 레포별로 따로 돌아감
- 나중에 팀을 합치거나 레포를 통합하면, 도구를 통합하느라 추가 인건비 발생
- 도구들을 어설프게 섞어 쓰면 “프랑켄슈타인 툴체인”이 됨
4-3. Vite+의 목표
“툴 선택·설정·디버깅에 쓰는 시간을 줄이고, 제품 개발에 집중하게 하는 통합 솔루션”
- dev/build/test/lint/fmt/lib/run/ui를 하나의 도구 + 하나의 생태계에서 해결
- 프레임워크 호환:
- React, Vue는 물론
- TanStack Start, SvelteKit 같은 풀스택 메타 프레임워크도 지원
- 이미 사용 중인 도구들(Vitest/Oxlint/Rolldown 등)을 그대로 활용하면서, CLI 차원에서 통합
5. 라이선스 모델과 OSS와의 관계
5-1. Vite+ 라이선스 구조
Vite+는 상업적 라이선스를 가진, 소스 공개(source-available) 상위 레이어다.
- 무료 대상
- 개인 개발자
- 오픈소스 프로젝트
- 소규모 비즈니스
- 유료 대상
- 스타트업: 연 단위 고정 요금(Flat pricing)
- 엔터프라이즈: 커스텀 가격
- 구체적인 티어 기준·가격은 퍼블릭 런치 시점에 공지 예정.
전략적 포인트:
- 대규모 조직에서 나오는 가치의 일부를 회수 → 이를 기반 OSS에 재투입하겠다는 모델.
5-2. Vite / Vitest / Rolldown / Oxc는 그대로 MIT
중요한 점:
“Vite+, Vitest, Rolldown, Oxc 같은 기반 프로젝트는 MIT로 영원히 오픈소스로 남는다.”
- Vite+는 이들 위에 얹힌 별도의 상위 레이어
- Vite+의 품질을 올리려면, 어차피:
- Vite
- Vitest
- Rolldown
- Oxc
자체를 개선해야 해서, OSS가 함께 이득을 본다는 구조.
6. 로드맵 & 도입 시점
- 현재 시점: 개발 중
- 계획:
- 지금은:
- 초기 도입 팀(early adopters) 모집 중
- 관심 있는 팀은 viteplus.dev를 통해 연락 가능
7. 기존 Vite 사용자 입장에서의 의미
7-1. “드롭인 업그레이드”로 설계
- npm 설치 후, 기존 Vite와 유사한 방식으로 사용
- Vite 생태계(플러그인, 프레임워크 통합)를 그대로 승계
vite dev, vite build만 쓰던 프로젝트에:
- 테스트, 린트, 포맷팅, 모노레포 캐시, Devtools를 차례로 붙일 수 있음
7-2. 기존 도구와의 관계
- Vitest, ESLint, Prettier, Turborepo 등을 모두 Vite+로 바로 갈아치워야 하는 건 아니다.
- 점진적으로:
- 테스트 →
vite test
- 린트 →
vite lint
- 포맷팅 →
vite fmt
- 라이브러리 →
vite lib
- 모노레포 →
vite run
로 옮겨가며 도구 스택을 단일 계열로 정리하는 것이 Vite+ 설계 방향.
8. 요약 및 도입 검토 체크리스트
8-1. 핵심 요약
- Vite+는 Vite 기반 통합 툴체인으로:
- dev/build를 넘어
- new/test/lint/fmt/lib/run/ui를 하나의 Rust 기반 스택에서 제공
- 목표:
- 대규모 JS 코드베이스·모노레포·여러 팀·여러 프로젝트를 가진 조직의
- 툴 관리 비용
- 빌드/테스트 속도
- 설정/디버깅 피로
를 줄이는 것
- OSS 관계:
- Vite / Vitest / Rolldown / Oxc는 계속 MIT OSS
- Vite+는 소스 공개 + 상업 라이선스 레이어
- 로드맵:
- 퍼블릭 프리뷰: 2026년 초
- 현재는 early adopters 모집 단계
8-2. 도입 검토용 체크리스트(요약)
- 현재 조직/프로젝트가 2개 이상 툴체인 조합을 쓰고 있는가?
- 모노레포에서 빌드/테스트 캐싱 구성에 시간을 많이 쓰고 있는가?
- ESLint/Prettier 성능이나 설정 복잡도가 병목인가?
- Vitest, Rollup/Rolldown, Vite를 이미 사용 중인가?
- 라이선스 기준상, 개인/OSS/소규모 비즈니스에 해당하는가, 아니면 스타트업/엔터프라이즈인가?
- 2026년 이후 도입을 고려할 수 있을 만큼 장기적으로 JS/TS 기반을 유지할 계획인가?
이 질문에 “그렇다”가 많이 나온다면, Vite+는 최소한 진지하게 관찰해야 할 툴체인 옵션이다.