Repolode
swc-project

swc-project/swc

Сверхбыстрый компилятор и парсер TypeScript/JavaScript на Rust, доступный из Rust и JavaScript.

Open source альтернатива:Babel

Звёзды
34,194
Форки
1,547
Открытые issues
413
Последний коммит
14 часов назад

Что это?

SWC (Speedy Web Compiler) — компилятор TypeScript и JavaScript, написанный на Rust. Он разбирает, преобразует и генерирует современный код ECMAScript и TypeScript и рассчитан на использование в качестве библиотеки как из Rust, так и из JavaScript. Большинство пользователей JavaScript подключают его через npm-пакет @swc/core, а пользователи Rust могут использовать отдельные крейты, например парсер ECMAScript.

Проект позиционируется как более быстрая альтернатива Babel для компиляции веб-кода и содержит руководство по переходу с Babel. Нативные npm-пакеты доступны для macOS x64 и arm64, Windows MSVC, а также Linux GNU и musl. Для использования требуется Node.js 10+, для разработки — Node.js 20+.

Для крейтов Rust указана опубликованная минимальная поддерживаемая версия Rust (MSRV) 1.73. Также доступен вспомогательный скрипт для обновления всех крейтов SWC в проекте на Rust.

Ключевые возможности

  • 01Разбирает и компилирует TypeScript и JavaScript с современным синтаксисом ECMAScript.
  • 02Доступен как библиотека Rust через отдельные крейты и как npm-пакет для JavaScript.
  • 03Поставляется с нативными бинарными файлами для macOS, Windows MSVC и Linux (GNU и musl) на x64 и arm64.
  • 04Содержит руководство по миграции и бенчмарки для сравнения с Babel.

Сценарии использования

  • Замена Babel в процессе сборки JavaScript- или TypeScript-проекта для ускорения компиляции.
  • Разработка инструментов на Rust, которым нужно разбирать или преобразовывать код ECMAScript.
  • Компиляция TypeScript для веб-проектов, рассчитанных на разные версии Node.js.

Быстрый старт

  1. 1

    Для использования с JavaScript следуйте руководству по установке на сайте swc.rs

  2. 2

    Для использования с Rust прочитайте rustdoc и начните с crate parser

Что важно знать

  • Для разработки проекта требуется Node версии 20 или новее.
  • Минимальная поддерживаемая версия Rust для crate — 1.73.

Темы

Частые вопросы

Что такое swc?
Сверхбыстрый компилятор и парсер TypeScript/JavaScript на Rust, доступный из Rust и JavaScript. SWC (Speedy Web Compiler) — компилятор TypeScript и JavaScript, написанный на Rust. Он разбирает, преобразует и генерирует современный код ECMAScript и TypeScript и рассчитан на использование в качестве библиотеки как из Rust, так и из JavaScript. Большинство пользователей JavaScript подключают его через npm-пакет @swc/core, а пользователи Rust могут использовать отдельные крейты, например парсер ECMAScript.
swc можно использовать бесплатно? Какая у него лицензия?
swc распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
swc всё ещё поддерживается?
Активно поддерживается. Последний коммит в swc — 21 окт. 2026 г..
Для чего можно использовать swc?
Замена Babel в процессе сборки JavaScript- или TypeScript-проекта для ускорения компиляции. Разработка инструментов на Rust, которым нужно разбирать или преобразовывать код ECMAScript. Компиляция TypeScript для веб-проектов, рассчитанных на разные версии Node.js.
Как установить swc?
Для использования с JavaScript следуйте руководству по установке на сайте swc.rs Для использования с Rust прочитайте rustdoc и начните с crate parser
Где скачать swc?
Исходный код и инструкции по установке — на GitHub: https://github.com/swc-project/swc

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты