SWC 트랜스파일 플레이그라운드
SWC Playground
Rust로 만든 초고속 컴파일러 SWC를 브라우저에서 그대로 실행합니다. TypeScript·JSX 코드를 서버 업로드 없이 실시간으로 트랜스파일하고, AST(JSON 트리)와 최소화 결과를 나란히 확인하세요. 타깃(ES5~ES2022)·데코레이터·소스맵 옵션과 기본/응용/심화 예제로 SWC의 동작 원리를 배울 수 있습니다.
⚡ SWC 플레이그라운드 — TS/JSX 트랜스파일 + AST
@swc/wasm-web v1.15.43엔진 로딩 중… (약 19MB)SWC 엔진을 불러오는 중…
예제 갤러리
SWC vs Babel vs tsc
SWC는 Rust로 작성된 트랜스파일러/번들러로, JS 기반 Babel보다 보통 20~70배 빠릅니다. tsc는 타입 검사까지 수행하지만 느리고, SWC·Babel은 타입 검사 없이 타입 표기를 “지우기만” 합니다. 그래서 실제 프로젝트는 타입 검사는 tsc(또는 IDE)에, 변환은 SWC에 맡기는 조합을 자주 씁니다.
왜 Rust가 빠른가
Rust는 네이티브로 컴파일되어 GC 일시정지가 없고, 메모리 레이아웃을 직접 제어합니다. SWC는 파싱·변환을 병렬화하고 불필요한 문자열 복사를 줄여 CPU 캐시 효율을 높입니다. 여기 플레이그라운드는 그 Rust 코드를 WebAssembly로 컴파일해 브라우저에서 그대로 실행합니다.
트랜스파일 vs 컴파일
컴파일은 한 언어를 다른 추상화 수준의 언어로 바꾸는 것(예: C→기계어) 입니다. 트랜스파일은 비슷한 수준의 언어 간 변환(TS→JS, ES2022→ES5)이라 “source-to-source 컴파일”이라고도 합니다. SWC가 하는 일은 후자이며, 타입 검사·최적화가 아니라 문법 변환이 핵심입니다.
모든 변환은 브라우저 안 WebAssembly에서 실행됩니다. 코드는 서버로 전송되지 않습니다. (참고: 이 도구의 타깃 최대값은 SWC 1.15.43 기준 ES2022이며, esnext는 ES2022로 매핑됩니다.)