일간
SvelteKit 3 — 설정이 vite.config로, $lib이 #lib으로
Svelte 팀이 10월 1일 SvelteKit 3을 발표했습니다.
브레이킹 체인지
| SvelteKit 2 | SvelteKit 3 | |
|---|---|---|
| 설정 위치 | svelte.config.js |
vite.config.ts |
| 라이브러리 별칭 | $lib |
#lib (Node 서브패스 import) |
| 서비스 워커 | 보일러플레이트 필요 | 단순화 |
| 에러 처리 | — | 프레임워크 전반에서 개선 |
두 변경의 공통점이 있습니다. Svelte 고유의 관례를 생태계 표준으로 바꾸는 것입니다. 설정을 Vite 설정 안으로 넣으면 다른 Vite 플러그인과 같은 자리에 있게 되고, #lib은 package.json의 imports 필드로 정의하는 Node 표준이라 Svelte 밖의 도구(테스트 러너, 린터)도 그대로 이해합니다.
새 기능
- 환경변수 시스템 개선
- 타입 안전성 강화
- 코드베이스 정리 — 팀의 표현으로 "잡동사니가 조금 줄었다"
아직 안 된 것
리모트 함수(remote functions) — "안전하고 효율적이며 타입 안전한 클라이언트-서버 통신"을 위한 기능 — 는 아직 진행 중입니다. 실험적인 Async Svelte 지원이 필요합니다.
마이그레이션
npx sv migrate sveltekit-3 --tasks all --confirm
자동으로 할 수 있는 것은 처리하고, 못 하는 것은 TODO 목록으로 뽑아줍니다. 새 프로젝트는 npx sv create my-new-app.
글에 없는 것
요구하는 Svelte·Node·Vite 버전이 명시돼 있지 않습니다. 알려진 이슈 목록도 없습니다.
실무에서 할 일
SvelteKit 2 프로젝트는 서두를 이유가 없습니다. 올릴 때는 마이그레이션 도구를 먼저 돌리고 TODO 목록을 보면 됩니다. $lib을 문자열로 가정한 코드(동적 import 경로 조합 등)가 있다면 그게 가장 먼저 걸릴 곳입니다. 리모트 함수를 기다리던 팀은 아직입니다.
2026년 10월 2일에 올라온 글
그날 대시보드 →댓글
불러오는 중…